lean2/examples/lean/ex2.lean
Leonardo de Moura 6508e63a17 feat(builtin/macros): add assume/take macros for making proof scripts more readable
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-01-11 18:36:37 -08:00

16 lines
406 B
Text

import macros.
theorem simple (p q r : Bool) : (p → q) ∧ (q → r) → p → r
:= assume H_pq_qr H_p,
let P_pq := and_eliml H_pq_qr,
P_qr := and_elimr H_pq_qr
in P_qr (P_pq H_p)
set_option pp::implicit true.
print environment 1.
theorem simple2 (a b c : Bool) : (a → b → c) → (a → b) → a → c
:= assume H_abc H_ab H_a,
(H_abc H_a) (H_ab H_a)
print environment 1.