blob: d58e4bf2d68643ee53b64fa3e34caae8d8e91b14 (
plain)
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
|
[< 0 > + < 1 > * < 2 >]
: nat
[< b > + < b > * < 2 >]
: nat
[<< # 0 >>]
: option nat
[1 {f 1}]
: Expr
fun (x : nat) (y z : Expr) => [1 + y z + {f x}]
: nat -> Expr -> Expr -> Expr
fun e : Expr =>
match e with
| [x y + z] => [x + y z]
| [1 + 1] => [1]
| _ => [e + e]
end
: Expr -> Expr
[(1 + 1)]
: Expr
Let "x" e1 e2
: expr
Let "x" e1 e2
: expr
fun x : nat => (# x)%nat
: nat -> nat
fun x : nat => ## x
: nat -> nat
fun x : nat => # x
: nat -> nat
fun x : nat => ### x
: nat -> nat
fun x : nat => ## x
: nat -> nat
fun x : nat => (x.-1)%pred
: nat -> nat
∀ a : nat, a = 0
: Prop
((∀ a : nat, a = 0) -> True)%type
: Prop
#
: Prop
# -> True
: Prop
((∀ a : nat, a = 0) -> True)%type
: Prop
##
: Prop
|