784 Goal "? q. q ~: {x::prat. x < prat_of_pnat (Abs_pnat 1)}"; |
784 Goal "? q. q ~: {x::prat. x < prat_of_pnat (Abs_pnat 1)}"; |
785 by (res_inst_tac [("x","prat_of_pnat (Abs_pnat 1)")] exI 1); |
785 by (res_inst_tac [("x","prat_of_pnat (Abs_pnat 1)")] exI 1); |
786 by (auto_tac (claset(),simpset() addsimps [prat_less_not_refl])); |
786 by (auto_tac (claset(),simpset() addsimps [prat_less_not_refl])); |
787 qed "lemma_prat_less_1_not_memEx"; |
787 qed "lemma_prat_less_1_not_memEx"; |
788 |
788 |
789 Goal "{x::prat. x < prat_of_pnat (Abs_pnat 1)} ~= {q::prat. True}"; |
789 Goal "{x::prat. x < prat_of_pnat (Abs_pnat 1)} ~= UNIV"; |
790 by (rtac notI 1); |
790 by (rtac notI 1); |
791 by (cut_facts_tac [lemma_prat_less_1_not_memEx] 1); |
791 by (cut_facts_tac [lemma_prat_less_1_not_memEx] 1); |
792 by (Asm_full_simp_tac 1); |
792 by (Asm_full_simp_tac 1); |
793 qed "lemma_prat_less_1_set_not_rat_set"; |
793 qed "lemma_prat_less_1_set_not_rat_set"; |
794 |
794 |
795 Goalw [psubset_def,subset_def] |
795 Goalw [psubset_def,subset_def] |
796 "{x::prat. x < prat_of_pnat (Abs_pnat 1)} < {q::prat. True}"; |
796 "{x::prat. x < prat_of_pnat (Abs_pnat 1)} < UNIV"; |
797 by (asm_full_simp_tac (simpset() addsimps |
797 by (asm_full_simp_tac |
798 [lemma_prat_less_1_set_not_rat_set, |
798 (simpset() addsimps [lemma_prat_less_1_set_not_rat_set, |
799 lemma_prat_less_1_not_memEx]) 1); |
799 lemma_prat_less_1_not_memEx]) 1); |
800 qed "lemma_prat_less_1_set_psubset_rat_set"; |
800 qed "lemma_prat_less_1_set_psubset_rat_set"; |
801 |
801 |
802 (*** prove non_emptiness of type ***) |
802 (*** prove non_emptiness of type ***) |
803 Goal "{x::prat. x < prat_of_pnat (Abs_pnat 1)} : {A. {} < A & \ |
803 Goal "{x::prat. x < prat_of_pnat (Abs_pnat 1)} : {A. {} < A & \ |
804 \ A < {q::prat. True} & \ |
804 \ A < UNIV & \ |
805 \ (!y: A. ((!z. z < y --> z: A) & \ |
805 \ (!y: A. ((!z. z < y --> z: A) & \ |
806 \ (? u: A. y < u)))}"; |
806 \ (? u: A. y < u)))}"; |
807 by (auto_tac (claset() addDs [prat_less_trans], |
807 by (auto_tac (claset() addDs [prat_less_trans], |
808 simpset() addsimps [empty_set_psubset_lemma_prat_less_1_set, |
808 simpset() addsimps [empty_set_psubset_lemma_prat_less_1_set, |
809 lemma_prat_less_1_set_psubset_rat_set])); |
809 lemma_prat_less_1_set_psubset_rat_set])); |