src/ZF/QPair.thy
changeset 45602 2a858377c3d2
parent 35762 af3ff2ba4c54
child 46820 c656222c4dc1
equal deleted inserted replaced
45601:d5178f19b671 45602:2a858377c3d2
    80 lemma QPair_iff [simp]: "<a;b> = <c;d> <-> a=c & b=d"
    80 lemma QPair_iff [simp]: "<a;b> = <c;d> <-> a=c & b=d"
    81 apply (simp add: QPair_def)
    81 apply (simp add: QPair_def)
    82 apply (rule sum_equal_iff)
    82 apply (rule sum_equal_iff)
    83 done
    83 done
    84 
    84 
    85 lemmas QPair_inject = QPair_iff [THEN iffD1, THEN conjE, standard, elim!]
    85 lemmas QPair_inject = QPair_iff [THEN iffD1, THEN conjE, elim!]
    86 
    86 
    87 lemma QPair_inject1: "<a;b> = <c;d> ==> a=c"
    87 lemma QPair_inject1: "<a;b> = <c;d> ==> a=c"
    88 by blast
    88 by blast
    89 
    89 
    90 lemma QPair_inject2: "<a;b> = <c;d> ==> b=d"
    90 lemma QPair_inject2: "<a;b> = <c;d> ==> b=d"
   247 lemma qsum_empty [simp]: "0<+>0 = 0"
   247 lemma qsum_empty [simp]: "0<+>0 = 0"
   248 by (simp add: qsum_defs )
   248 by (simp add: qsum_defs )
   249 
   249 
   250 (*Injection and freeness rules*)
   250 (*Injection and freeness rules*)
   251 
   251 
   252 lemmas QInl_inject = QInl_iff [THEN iffD1, standard]
   252 lemmas QInl_inject = QInl_iff [THEN iffD1]
   253 lemmas QInr_inject = QInr_iff [THEN iffD1, standard]
   253 lemmas QInr_inject = QInr_iff [THEN iffD1]
   254 lemmas QInl_neq_QInr = QInl_QInr_iff [THEN iffD1, THEN FalseE, elim!]
   254 lemmas QInl_neq_QInr = QInl_QInr_iff [THEN iffD1, THEN FalseE, elim!]
   255 lemmas QInr_neq_QInl = QInr_QInl_iff [THEN iffD1, THEN FalseE, elim!]
   255 lemmas QInr_neq_QInl = QInr_QInl_iff [THEN iffD1, THEN FalseE, elim!]
   256 
   256 
   257 lemma QInlD: "QInl(a): A<+>B ==> a: A"
   257 lemma QInlD: "QInl(a): A<+>B ==> a: A"
   258 by blast
   258 by blast