plus
0
y
y
plus
s
x
y
s
plus
x
y
times
0
y
0
times
s
x
y
plus
y
times
x
y
eq_nat
0
s
y
false
eq_nat
0
0
true
eq_nat
s
x
s
y
eq_nat
x
y
eq_nat
s
x
0
false
eq_rat
pair
a
b
pair
c
d
eq_nat
times
a
d
times
b
c
div_rat
pair
a
b
pair
c
d
pair
times
a
d
times
b
c
times_rat
pair
a
b
pair
c
d
pair
times
a
c
times
b
d
plus_rat
pair
a
b
pair
c
d
pair
plus
times
a
d
times
c
b
times
b
d
non_zero_rat
pair
a
b
non_zero_nat
times
a
b
non_zero_nat
s
0
true
non_zero_nat
0
false
non_zero_nat
s
s
x
non_zero_nat
s
x
2
pair
s
s
0
s
0
minus_nat
s
x
s
y
minus_nat
x
y
sqrt2
r
if_approx
non_zero_rat
r
eq_rat
2
times_rat
r
r
r
if_approx
true
true
r
r
if_approx
true
false
r
sqrt2
div_rat
plus_rat
r
div_rat
2
r
2
init
sqrt2
2
run_again
x
run_again
init
plus
2
0
0
s
1
times
2
eq_nat
2
false
0
true
0
eq_rat
2
pair
2
div_rat
2
times_rat
2
plus_rat
2
non_zero_rat
1
non_zero_nat
1
2
0
minus_nat
2
sqrt2
1
if_approx
3
init
0
run_again
1
INNERMOST