Quot/Examples/IntEx2.thy
changeset 766 df053507edba
parent 719 a9e55e1ef64c
child 767 37285ec4387d
equal deleted inserted replaced
765:d0250d01782c 766:df053507edba
     9 fun
     9 fun
    10   intrel :: "(nat \<times> nat) \<Rightarrow> (nat \<times> nat) \<Rightarrow> bool" (infix "\<approx>" 50)
    10   intrel :: "(nat \<times> nat) \<Rightarrow> (nat \<times> nat) \<Rightarrow> bool" (infix "\<approx>" 50)
    11 where
    11 where
    12   "intrel (x, y) (u, v) = (x + v = u + y)"
    12   "intrel (x, y) (u, v) = (x + v = u + y)"
    13 
    13 
    14 quotient int = "nat \<times> nat" / intrel
    14 quotient_type int = "nat \<times> nat" / intrel
    15   unfolding equivp_def
    15   unfolding equivp_def
    16   by (auto simp add: mem_def expand_fun_eq)
    16   by (auto simp add: mem_def expand_fun_eq)
    17 
    17 
    18 instantiation int :: "{zero, one, plus, uminus, minus, times, ord, abs, sgn}"
    18 instantiation int :: "{zero, one, plus, uminus, minus, times, ord, abs, sgn}"
    19 begin
    19 begin