author | Christian Urban <urbanc@in.tum.de> |
Tue, 07 Aug 2012 16:55:17 +0100 | |
changeset 3195 | deef21dc972f |
parent 3109 | d79e936e30ea |
child 3235 | 5ebd327ffb96 |
permissions | -rw-r--r-- |
theory FiniteType imports "../Nominal2" begin typedef ('a::pt, 'b::fs) ffun = "{f::'a => 'b. finite (supp f)}" apply(rule_tac x="\<lambda>_. undefined::'b::fs" in exI) apply(auto) apply(rule_tac S="supp (undefined::'b::fs)" in supports_finite) apply(simp add: supports_def) apply(perm_simp) apply(simp add: fresh_def[symmetric]) apply(simp add: swap_fresh_fresh) apply(simp add: finite_supp) done end