src/HOL/Library/Quotient_Option.thy
changeset 39302 d7728f65b353
parent 39198 f967a16dfcdd
child 40464 e1db06cf6254
equal deleted inserted replaced
39301:e1bd8a54c40f 39302:d7728f65b353
    64   by simp
    64   by simp
    65 
    65 
    66 lemma option_Some_prs[quot_preserve]:
    66 lemma option_Some_prs[quot_preserve]:
    67   assumes q: "Quotient R Abs Rep"
    67   assumes q: "Quotient R Abs Rep"
    68   shows "(Rep ---> Option.map Abs) Some = Some"
    68   shows "(Rep ---> Option.map Abs) Some = Some"
    69   apply(simp add: ext_iff)
    69   apply(simp add: fun_eq_iff)
    70   apply(simp add: Quotient_abs_rep[OF q])
    70   apply(simp add: Quotient_abs_rep[OF q])
    71   done
    71   done
    72 
    72 
    73 lemma option_map_id[id_simps]:
    73 lemma option_map_id[id_simps]:
    74   shows "Option.map id = id"
    74   shows "Option.map id = id"
    75   by (simp add: ext_iff split_option_all)
    75   by (simp add: fun_eq_iff split_option_all)
    76 
    76 
    77 lemma option_rel_eq[id_simps]:
    77 lemma option_rel_eq[id_simps]:
    78   shows "option_rel (op =) = (op =)"
    78   shows "option_rel (op =) = (op =)"
    79   by (simp add: ext_iff split_option_all)
    79   by (simp add: fun_eq_iff split_option_all)
    80 
    80 
    81 end
    81 end