equal
deleted
inserted
replaced
603 refute [expect = genuine] |
603 refute [expect = genuine] |
604 oops |
604 oops |
605 |
605 |
606 text {* Non-recursive datatypes *} |
606 text {* Non-recursive datatypes *} |
607 |
607 |
608 datatype_new T1 = A | B |
608 datatype T1 = A | B |
609 |
609 |
610 lemma "P (x::T1)" |
610 lemma "P (x::T1)" |
611 refute [expect = genuine] |
611 refute [expect = genuine] |
612 oops |
612 oops |
613 |
613 |
637 |
637 |
638 lemma "P (case x of A \<Rightarrow> a | B \<Rightarrow> b)" |
638 lemma "P (case x of A \<Rightarrow> a | B \<Rightarrow> b)" |
639 refute [expect = genuine] |
639 refute [expect = genuine] |
640 oops |
640 oops |
641 |
641 |
642 datatype_new 'a T2 = C T1 | D 'a |
642 datatype 'a T2 = C T1 | D 'a |
643 |
643 |
644 lemma "P (x::'a T2)" |
644 lemma "P (x::'a T2)" |
645 refute [expect = genuine] |
645 refute [expect = genuine] |
646 oops |
646 oops |
647 |
647 |
667 |
667 |
668 lemma "P (case x of C u \<Rightarrow> c u | D v \<Rightarrow> d v)" |
668 lemma "P (case x of C u \<Rightarrow> c u | D v \<Rightarrow> d v)" |
669 refute [expect = genuine] |
669 refute [expect = genuine] |
670 oops |
670 oops |
671 |
671 |
672 datatype_new ('a,'b) T3 = E "'a \<Rightarrow> 'b" |
672 datatype ('a,'b) T3 = E "'a \<Rightarrow> 'b" |
673 |
673 |
674 lemma "P (x::('a,'b) T3)" |
674 lemma "P (x::('a,'b) T3)" |
675 refute [expect = genuine] |
675 refute [expect = genuine] |
676 oops |
676 oops |
677 |
677 |
770 |
770 |
771 lemma "a # xs = b # xs" |
771 lemma "a # xs = b # xs" |
772 refute [expect = potential] |
772 refute [expect = potential] |
773 oops |
773 oops |
774 |
774 |
775 datatype_new BitList = BitListNil | Bit0 BitList | Bit1 BitList |
775 datatype BitList = BitListNil | Bit0 BitList | Bit1 BitList |
776 |
776 |
777 lemma "P (x::BitList)" |
777 lemma "P (x::BitList)" |
778 refute [expect = potential] |
778 refute [expect = potential] |
779 oops |
779 oops |
780 |
780 |