3.1 Terms

 termの例を挙げます.

`x+1`;;
val it : term = `x + 1`
`(x)+1`;;
val it : term = `x + 1`
` x + ( 1 ) `;;
val it : term = `x + 1`

これらはいずれも同じtermで,その内部表現は

# remove_printer print_qterm;;
`x+1`;;
val it : term =
...
# install_printer print_qterm;;

のように参照できます.
 代入は,subst関数を用いて

subst[`2`,`1`]`x+1`;;
val it : term = `x + 2`

とします.なお

subst[`2`,`x+1`]`x+1+1`;;
val it : term = `x + 1 + 1`

は駄目ですが,括弧を付けると

subst[`2`,`x+1`]`(x+1)+1`;;
val it : term = `2 + 1`

となります.