Nominal/ExLetMult.thy
changeset 1745 26c4653d76d1
parent 1744 00680cea0dde
equal deleted inserted replaced
1744:00680cea0dde 1745:26c4653d76d1
     8 ML {* val _ = alpha_type := AlphaLst *}
     8 ML {* val _ = alpha_type := AlphaLst *}
     9 ML {* val _ = cheat_equivp := true *}
     9 ML {* val _ = cheat_equivp := true *}
    10 nominal_datatype trm =
    10 nominal_datatype trm =
    11   Vr "name"
    11   Vr "name"
    12 | Ap "trm" "trm"
    12 | Ap "trm" "trm"
    13 | Lm "trm" "trm"
    13 | Lm x::"name" t::"trm" bind x in t
    14 | Lt l::"lts" t::"trm" s::"trm" bind "bn l" in t, bind "bn l" in s
    14 | Lt l::"lts" t::"trm" s::"trm" bind "bn l" in t, bind "bn l" in s
    15 and lts =
    15 and lts =
    16   Lnil
    16   Lnil
    17 | Lcons "name" "trm" "lts"
    17 | Lcons "name" "trm" "lts"
    18 binder
    18 binder