head
Cons
x
xs
x
factor
Cons
RPar
xs
xs
factor
Cons
Div
xs
xs
factor
Cons
Mul
xs
xs
factor
Cons
Plus
xs
xs
factor
Cons
Minus
xs
xs
factor
Cons
Val
int
xs
xs
factor
Cons
LPar
xs
factor[Ite][True][Let]
Cons
LPar
xs
expr
Cons
LPar
xs
member
x'
Cons
x
xs
member[Ite][True][Ite]
eqAlph
x
x'
x'
Cons
x
xs
member
x
Nil
False
atom
Cons
x
xs
xs
atom
Nil
Nil
eqAlph
RPar
RPar
True
eqAlph
RPar
LPar
False
eqAlph
RPar
Div
False
eqAlph
RPar
Mul
False
eqAlph
RPar
Plus
False
eqAlph
RPar
Minus
False
eqAlph
RPar
Val
int2
False
eqAlph
LPar
RPar
False
eqAlph
LPar
LPar
True
eqAlph
LPar
Div
False
eqAlph
LPar
Mul
False
eqAlph
LPar
Plus
False
eqAlph
LPar
Minus
False
eqAlph
LPar
Val
int2
False
eqAlph
Div
RPar
False
eqAlph
Div
LPar
False
eqAlph
Div
Div
True
eqAlph
Div
Mul
False
eqAlph
Div
Plus
False
eqAlph
Div
Minus
False
eqAlph
Div
Val
int2
False
eqAlph
Mul
RPar
False
eqAlph
Mul
LPar
False
eqAlph
Mul
Div
False
eqAlph
Mul
Mul
True
eqAlph
Mul
Plus
False
eqAlph
Mul
Minus
False
eqAlph
Mul
Val
int2
False
eqAlph
Plus
RPar
False
eqAlph
Plus
LPar
False
eqAlph
Plus
Div
False
eqAlph
Plus
Mul
False
eqAlph
Plus
Plus
True
eqAlph
Plus
Minus
False
eqAlph
Plus
Val
int2
False
eqAlph
Minus
RPar
False
eqAlph
Minus
LPar
False
eqAlph
Minus
Div
False
eqAlph
Minus
Mul
False
eqAlph
Minus
Plus
False
eqAlph
Minus
Minus
True
eqAlph
Minus
Val
int2
False
eqAlph
Val
int
RPar
False
eqAlph
Val
int
LPar
False
eqAlph
Val
int
Div
False
eqAlph
Val
int
Mul
False
eqAlph
Val
int
Plus
False
eqAlph
Val
int
Minus
False
eqAlph
Val
int
Val
int2
!EQ
int2
int
notEmpty
Cons
x
xs
True
notEmpty
Nil
False
term
xs
term[Let]
xs
factor
xs
parsexp
xs
expr
xs
expr
xs
expr[Let]
xs
term
xs
and
False
False
False
and
True
False
False
and
False
True
False
and
True
True
True
!EQ
S
x
S
y
!EQ
x
y
!EQ
0
S
y
False
!EQ
S
x
0
False
!EQ
0
0
True
factor[Ite][True][Let]
xs'
Cons
RPar
xs
factor[Ite][True][Let][Ite]
True
xs'
Cons
RPar
xs
factor[Ite][True][Let]
xs'
Cons
LPar
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
LPar
xs
factor[Ite][True][Let]
xs'
Cons
Div
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
Div
xs
factor[Ite][True][Let]
xs'
Cons
Mul
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
Mul
xs
factor[Ite][True][Let]
xs'
Cons
Plus
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
Plus
xs
factor[Ite][True][Let]
xs'
Cons
Minus
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
Minus
xs
factor[Ite][True][Let]
xs'
Cons
Val
int
xs
factor[Ite][True][Let][Ite]
False
xs'
Cons
Val
int
xs
term[Let]
xs'
Cons
x
xs
term[Let][Ite][False][Ite]
member
x
Cons
Mul
Cons
Div
Nil
xs'
Cons
x
xs
expr[Let]
xs'
Cons
x
xs
expr[Let][Ite][False][Ite]
member
x
Cons
Plus
Cons
Minus
Nil
xs'
Cons
x
xs
term[Let]
xs
Nil
Nil
member[Ite][True][Ite]
False
x'
Cons
x
xs
member
x'
xs
factor[Ite][True][Let]
xs
Nil
factor[Ite][True][Let][Ite]
and
False
eqAlph
head
Nil
RPar
xs
Nil
expr[Let]
xs
Nil
Nil
member[Ite][True][Ite]
True
x
xs
True
Plus
0
LPar
0
True
0
head
1
factor
1
Minus
0
atom
1
expr
1
expr[Let]
2
Div
0
Mul
0
member
2
!EQ
2
Cons
2
term[Let][Ite][False][Ite]
3
Val
1
False
0
term
1
factor[Ite][True][Let]
2
member[Ite][True][Ite]
3
Nil
0
and
2
factor[Ite][True][Let][Ite]
3
RPar
0
S
1
term[Let]
2
expr[Let][Ite][False][Ite]
3
0
0
eqAlph
2
notEmpty
1
parsexp
1
INNERMOST