theory False imports "~/Well_Order_Extension" begin definition "int_less = {(x, (y :: int)). x < y}" text {* If the less-than relation on integers is a subset of a partial relation, then it is the partial relation. *} lemma int_less_subset: "\ int_less <= r; Partial_order r \ \ (r - Id) = int_less" apply (simp add: partial_order_on_def preorder_on_def) apply (safe, simp_all add: int_less_def) apply (rule ccontr) apply (subgoal_tac "b < a") apply (erule notE, erule(1) antisymD) apply auto[1] apply simp apply auto[1] done lemma field_id: "Field Id = UNIV" by (auto simp: Field_def) lemma Partial_order_int_less: "Partial_order (int_less Un Id)" apply (simp add: partial_order_on_def preorder_on_def refl_on_def field_id) apply (auto simp: int_less_def intro!: transI antisymI) done lemma not_wf_int_less: "\ wf int_less" apply clarsimp apply (drule_tac P="\x. x > 0" and a=0 in wf_induct) apply (drule_tac x="x - 1" in spec) apply (simp add: int_less_def) apply simp done lemma False: "False" using well_ordering_extension[OF Partial_order_int_less] apply clarsimp apply (drule int_less_subset) apply (simp add: well_order_on_def linear_order_on_def) apply (simp add: well_order_on_def not_wf_int_less) done end