-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_lia_tactics.v
55 lines (42 loc) · 997 Bytes
/
test_lia_tactics.v
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Require Import ZArith.
Require Import Psatz.
From mathcomp
Require Import ssreflect ssrfun ssrbool eqtype ssrnat seq path div choice.
From mathcomp
Require Import fintype tuple finfun bigop prime finset binomial.
From mathcomp
Require Import ssralg ssrnum ssrint rat.
Require Import lia_tactics.
Set Implicit Arguments.
Unset Strict Implicit.
Unset Printing Implicit Defensive.
Lemma test_nat1 (x y : nat) : x < y -> x < y + 1.
Proof.
ssrnatlia.
Qed.
Lemma test_nat2 (x y : nat) : x < y -> 0 < y.
Proof.
ssrnatlia.
Qed.
Lemma test_nat3 (x y : nat) : x == y -> 1 < y -> 0 < x.
Proof.
try ssrnatlia.
ssrnatomega.
Qed.
Import GRing.Theory.
Import Num.Theory.
Local Open Scope ring_scope.
Lemma test_int1 (x y : int) : x < y -> x < y + 1.
Proof.
intlia.
Qed.
Lemma test_int2 (x : int) : 1 / 2%:R < x -> 0 < x.
intlia.
Qed.
Lemma test_int3 (x : int) : x > 0 /\ x < 2 -> x = 1.
intlia.
Qed.
Lemma test_int4 (x : int) : (x > 0) && (x < 2) -> x = 1.
propify_bool_connectives.
intlia.
Qed.