src/HOL/Isar_Examples/Basic_Logic.thy
changeset 55656 eb07b0acbebc
parent 55640 abc140f21caa
child 58614 7338eb25226c
equal deleted inserted replaced
55655:af028f35af60 55656:eb07b0acbebc
   289 
   289 
   290   \medskip In our example the situation is even simpler, since the two
   290   \medskip In our example the situation is even simpler, since the two
   291   cases actually coincide.  Consequently the proof may be rephrased as
   291   cases actually coincide.  Consequently the proof may be rephrased as
   292   follows. *}
   292   follows. *}
   293 
   293 
   294 lemma "P \<or> P --> P"
   294 lemma "P \<or> P \<longrightarrow> P"
   295 proof
   295 proof
   296   assume "P \<or> P"
   296   assume "P \<or> P"
   297   then show P
   297   then show P
   298   proof
   298   proof
   299     assume P
   299     assume P
   305 text {* Again, the rather vacuous body of the proof may be collapsed.
   305 text {* Again, the rather vacuous body of the proof may be collapsed.
   306   Thus the case analysis degenerates into two assumption steps, which
   306   Thus the case analysis degenerates into two assumption steps, which
   307   are implicitly performed when concluding the single rule step of the
   307   are implicitly performed when concluding the single rule step of the
   308   double-dot proof as follows. *}
   308   double-dot proof as follows. *}
   309 
   309 
   310 lemma "P \<or> P --> P"
   310 lemma "P \<or> P \<longrightarrow> P"
   311 proof
   311 proof
   312   assume "P \<or> P"
   312   assume "P \<or> P"
   313   then show P ..
   313   then show P ..
   314 qed
   314 qed
   315 
   315