Repository navigation
Expand file tree
/
Copy pathcodeAST.txt
More file actions
97 lines (83 loc) · 1.71 KB
/
Copy pathcodeAST.txt
File metadata and controls
97 lines (83 loc) · 1.71 KB
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
\x.x+1
Expr::Abs(
var = "x",
body = Expr::Arithmetic(
operation = Op::Add,
lhs = Expr::Var(name="x")
rhs = Expr::Literal(value=1)
)
)
(\x.x+1) 1
Expr::App(
function = Expr::Abs(
var = "x"
body = Expr::Arithmetic(
operation = Op::Add
lhs = Expr::Var(name="x")
rhs = Expr::Literal(value=1)
)
)
parameter = Expr::Literal(value=1)
)
(\x.\y.x+y) 1 2
Expr::App(
function = Expr::App(
function = Expr::Abs(
var = "x"
body = Expr::Abs(
var = "y"
body = Expr::Arithmetic(
operation = Op::Add
lhs = Expr::Var(name="x")
rhs = Expr::Var(name="y")
)
)
)
parameter = Expr::Literal(value=1)
)
parameter = Expr::Literal(value=2)
)
(\x.\y.y x) 1 ((\x.\y.x+y) 2)
(\x.\y.y x) 1 \y.2+y
(\y.y 1) \y.2+y
(\y.2+y) 1
2+1
3
Expr::App(
function = Expr::App(
function = Expr::Abs(
var = "x",
body = Expr::Abs(
var = "y",
body = Expr::App(
function = Expr::Variable(name="y")
parameter = Expr::Variable(name="x")
)
)
)
parameter = Expr::Literal(value=1.)
)
paramter = Expr::App(
function = Expr::Abs(
var = "x"
body = Expr::Abs(
var = "y"
body = Expr::Arithmetic(
operation = Op::Add
lhs = Expr::Variable(name="x")
rhs = Expr::Variable(name="y")
)
)
)
parameter = Expr::Literal(value=2.)
)
)
(\f.f f) (\f.\x.if x!=1 f (x-1) else 1) 2
(\f.\x.if x!=1 f(x-1) else 1) (\f.\x.if x!=1 f(x-1) else 1) 2
(\x.if x!=1 (\f.\x.if x!=1 f(x-1) else 1) x-1 else 1) 2
if 2!=1 (\f.\x.if x!=1 f x-1 else 1) 2-1 else 1
(\f.\x.if x!=1 f x-1 else 1) 1
\x.if x!=1 1 x-1 else 1
inner = \x.(f (\v.x x v))
y_comb = \f.(\x.(f (\v.x x v)) \x.(f (\v.x x v)))
(\f.(\x.(f (\v.x x v))) \x.(f (\v.x x v))) (\f.\x.x<2?1:(f x-1) + (f x-2)) 25