diff -r ade2f8fcf8e8 -r 51ef8a3cb6ef Nominal/Ex/TypeVarsTest.thy --- a/Nominal/Ex/TypeVarsTest.thy Thu Dec 15 16:20:11 2011 +0000 +++ b/Nominal/Ex/TypeVarsTest.thy Thu Dec 15 16:20:42 2011 +0000 @@ -17,9 +17,9 @@ instance nat :: s1 .. instance int :: s2 .. -nominal_datatype ('a, 'b, 'c) lam = +nominal_datatype ('a::"{s1,fs}", 'b::"{s2,fs}", 'c::at) lam = Var "name" -| App "('a::s1, 'b::s2, 'c::at) lam" "('a, 'b, 'c) lam" +| App "('a, 'b, 'c) lam" "('a, 'b, 'c) lam" | Lam x::"name" l::"('a, 'b, 'c) lam" binds x in l | Foo "'a" "'b" | Bar x::"'c" l::"('a, 'b, 'c) lam" binds x in l (* Bar binds a polymorphic atom *) @@ -41,11 +41,11 @@ nominal_datatype ('alpha, 'beta, 'gamma) psi = PsiNil -| Output "'alpha" "'alpha" "('alpha, 'beta, 'gamma) psi" +| Output "'alpha::fs" "'alpha::fs" "('alpha::fs, 'beta::fs, 'gamma::fs) psi" nominal_datatype 'a foo = - Node x::"name" f::"'a foo" binds x in f + Node x::"name" f::"('a::fs) foo" binds x in f | Leaf "'a" term "Leaf"