Commit graph

2212 commits

Author SHA1 Message Date
Leonardo de Moura
619186b2a8 feat: only use set_option codegen false where needed 2022-03-06 19:15:05 -08:00
Leonardo de Moura
d3b2028a05 feat: add Fin.succ 2022-03-05 17:36:38 -08:00
Leonardo de Moura
ef38c82c77 fix: missing hypotheses at List.sizeOf_lt_of_mem 2022-03-03 19:52:05 -08:00
Leonardo de Moura
99677823c3 fix: ForIn' instance binder annotations 2022-03-03 19:51:45 -08:00
Leonardo de Moura
d8ee03c1bb feat: add ForIn' instance that is similar to ForIn but provides a proof that the iterated elements are in the collection 2022-03-03 19:05:27 -08:00
Leonardo de Moura
e1424653b9 chore: remove workaround 2022-03-03 18:16:54 -08:00
Leonardo de Moura
337c55f322 fix: missing import 2022-03-03 18:13:34 -08:00
Leonardo de Moura
aeb9b2fb8c chore: add Membership instance for Array 2022-03-03 18:13:34 -08:00
Leonardo de Moura
fd519401ff feat: add Membership instance for List
and the theorem `a ∈ as -> sizeOf a < sizeOf as`.
We will use theorems like this one to improve the `decreasing_tactic`.
2022-03-03 18:13:21 -08:00
Leonardo de Moura
022a4d5ac1 feat: add notation 2022-03-03 17:18:51 -08:00
Leonardo de Moura
f629be745b chore: add Nat.le_refl as simp theorem 2022-03-03 17:18:11 -08:00
Leonardo de Moura
89c3820781 chore: naming convention 2022-03-03 17:17:51 -08:00
Leonardo de Moura
5845002e8c feat: use WF at anyM 2022-03-03 16:43:05 -08:00
Leonardo de Moura
3fa001911b feat: add ite_self simp theorem 2022-03-03 11:55:05 -08:00
Leonardo de Moura
02d7cedba8 chore: remove unnecessary termination_by annotations 2022-03-03 11:24:06 -08:00
Leonardo de Moura
eac5bab429 chore: helper theorem 2022-03-01 16:54:25 -08:00
Leonardo de Moura
140559c447 feat: sizeOf for Thunks and Unit -> a 2022-03-01 16:40:11 -08:00
Leonardo de Moura
de51160929 fix: core library 2022-03-01 13:36:24 -08:00
François G. Dorais
e84699f130 fix: remove unnecessary hypotheses 2022-03-01 13:31:01 -08:00
Leonardo de Moura
89e0de9fbb chore: use WF compiler to define Nat.mod and Nat.div 2022-03-01 13:08:59 -08:00
Leonardo de Moura
0f796ac804 chore: avoid heterogeneous polymorphic operations and add add hugeFuel at Linear.lean 2022-03-01 11:25:15 -08:00
Leonardo de Moura
9bd82b798a chore: use bif instead of if at Linear.lean 2022-03-01 10:55:03 -08:00
Leonardo de Moura
da55789c26 feat: add a proper BEq instance for Nat 2022-03-01 09:01:08 -08:00
Leonardo de Moura
0f06fbf648 feat: LawfulBEq must be reflexive 2022-02-28 19:27:51 -08:00
Leonardo de Moura
7a49f71328 feat: add bif notation for cond function 2022-02-28 18:34:59 -08:00
Leonardo de Moura
4e310ac63d feat: improve SimpTheorem preprocessor 2022-02-28 18:27:36 -08:00
Leonardo de Moura
e8fb0c96ac feat: add helper theorems 2022-02-28 18:06:02 -08:00
Leonardo de Moura
5ddb3c3435 feat: faster PolyCnstr.combine 2022-02-28 17:24:26 -08:00
Leonardo de Moura
b5f28239af feat: add List helper theorems 2022-02-28 15:16:13 -08:00
Leonardo de Moura
3005bab970 feat: helper theorem and tactic for WF 2022-02-28 15:11:00 -08:00
Leonardo de Moura
802922ddaf feat: add helper sizeOf simp theorems 2022-02-28 12:28:37 -08:00
Leonardo de Moura
2ba3205f94 feat: add Prod.Lex.right' 2022-02-28 11:19:28 -08:00
Leonardo de Moura
10657f5e81 feat: add trace <string> tactic 2022-02-28 11:16:42 -08:00
Leonardo de Moura
46b97c2b70 fix: ExceptT.run_lift 2022-02-28 07:25:00 -08:00
Leonardo de Moura
89f88b1caa feat: simplify nested arith expressions 2022-02-27 09:01:52 -08:00
Leonardo de Moura
90055fb7d4 chore: clarify error message at decreasing_tactic 2022-02-26 10:15:05 -08:00
Leonardo de Moura
f7f886dcb2 feat: improve error message for decreasing_tactic failures 2022-02-26 09:42:59 -08:00
Leonardo de Moura
cabd599de1 feat: add fail tactic 2022-02-26 09:31:19 -08:00
Leonardo de Moura
0242eb7ede feat: use simp (config := { arith := true }) at decreasing_tactic
closes #262
2022-02-26 09:12:34 -08:00
Leonardo de Moura
ff76958959 feat: basic support for linear Nat arithmetic at simp 2022-02-26 08:58:32 -08:00
Leonardo de Moura
812cc72285 chore: add helper theorems 2022-02-25 17:04:04 -08:00
Leonardo de Moura
77dda12bc9 chore: add Simp.Config.arith option 2022-02-25 16:30:44 -08:00
Leonardo de Moura
3f636b9f83 feat: add Lean.Meta.Linear.Nat.simpCnstr? 2022-02-25 16:27:21 -08:00
Leonardo de Moura
f7fd706973 chore: missing import 2022-02-25 16:20:26 -08:00
Leonardo de Moura
346930af9d feat: add ExprCnstr.eq_of_toNormPoly_eq 2022-02-25 14:55:20 -08:00
Leonardo de Moura
b8bed6fb5c feat: add LawfulBEq class 2022-02-25 13:35:08 -08:00
Leonardo de Moura
3b130ee42f feat: add Poly.toExpr 2022-02-25 12:31:30 -08:00
Leonardo de Moura
82e3789604 fix: run_lift type 2022-02-25 07:49:34 -08:00
Leonardo de Moura
04b93fc725 chore: fix invalid proof 2022-02-25 07:24:02 -08:00
Leonardo de Moura
c9471ea029 fix: invalid proof 2022-02-25 07:17:31 -08:00