lean2/tests/lean/coercion2.lean
Leonardo de Moura 4ba097a141 feat(frontends/lean): use lowercase commands, replace 'endscope' and 'endnamespace' with 'end'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-01-05 13:06:36 -08:00

32 lines
621 B
Text

variable T : Type
variable R : Type
variable t2r : T -> R
coercion t2r
variable g : R -> R -> R
variable a : T
print g a a
variable b : R
print g a b
print g b a
setoption lean::pp::coercion true
print g a a
print g a b
print g b a
setoption lean::pp::coercion false
variable S : Type
variable s : S
variable r : S
variable h : S -> S -> S
infixl 10 ++ : g
infixl 10 ++ : h
setoption lean::pp::notation false
print a ++ b ++ a
print r ++ s ++ r
check a ++ b ++ a
check r ++ s ++ r
setoption lean::pp::coercion true
print a ++ b ++ a
print r ++ s ++ r
setoption lean::pp::notation true
print a ++ b ++ a
print r ++ s ++ r