src/HOL/Isar_examples/KnasterTarski.thy
changeset 7761 7fab9592384f
parent 7480 0a0e0dbe1269
child 7818 1acfb8cc3720
equal deleted inserted replaced
7760:43f8d28dbc6e 7761:7fab9592384f
     3     Author:     Markus Wenzel, TU Muenchen
     3     Author:     Markus Wenzel, TU Muenchen
     4 
     4 
     5 Typical textbook proof example.
     5 Typical textbook proof example.
     6 *)
     6 *)
     7 
     7 
       
     8 header {* Textbook-style reasoning: the Knaster-Tarski Theorem *};
     8 
     9 
     9 theory KnasterTarski = Main:;
    10 theory KnasterTarski = Main:;
       
    11 
       
    12 
       
    13 subsection {* Prose version *};
    10 
    14 
    11 text {*
    15 text {*
    12  According to the book ``Introduction to Lattices and Order'' (by
    16  According to the book ``Introduction to Lattices and Order'' (by
    13  B. A. Davey and H. A. Priestley, CUP 1990), the Knaster-Tarski
    17  B. A. Davey and H. A. Priestley, CUP 1990), the Knaster-Tarski
    14  fixpoint theorem is as follows (pages 93--94).  Note that we have
    18  fixpoint theorem is as follows (pages 93--94).\footnote{We have
    15  dualized their argument, and tuned the notation a little bit.
    19  dualized their argument, and tuned the notation a little bit.}
    16 
    20 
    17  \paragraph{The Knaster-Tarski Fixpoint Theorem.}  Let $L$ be a
    21  \medskip \textbf{The Knaster-Tarski Fixpoint Theorem.}  Let $L$ be a
    18  complete lattice and $f \colon L \to L$ an order-preserving map.
    22  complete lattice and $f \colon L \to L$ an order-preserving map.
    19  Then $\bigwedge \{ x \in L \mid f(x) \le x \}$ is a fixpoint of $f$.
    23  Then $\bigwedge \{ x \in L \mid f(x) \le x \}$ is a fixpoint of $f$.
    20 
    24 
    21  \textbf{Proof.} Let $H = \{x \in L \mid f(x) \le x\}$ and $a =
    25  \textbf{Proof.} Let $H = \{x \in L \mid f(x) \le x\}$ and $a =
    22  \bigwedge H$.  For all $x \in H$ we have $a \le x$, so $f(a) \le f(x)
    26  \bigwedge H$.  For all $x \in H$ we have $a \le x$, so $f(a) \le f(x)
    25  complete the proof that $a$ is a fixpoint.  Since $f$ is
    29  complete the proof that $a$ is a fixpoint.  Since $f$ is
    26  order-preserving, $f(f(a)) \le f(a)$.  This says $f(a) \in H$, so $a
    30  order-preserving, $f(f(a)) \le f(a)$.  This says $f(a) \in H$, so $a
    27  \le f(a)$.
    31  \le f(a)$.
    28 *};
    32 *};
    29 
    33 
       
    34 
       
    35 subsection {* Formal version *};
       
    36 
    30 text {*
    37 text {*
    31  Our proof below closely follows this presentation.  Virtually all of
    38  Our proof below closely follows the original presentation.  Virtually
    32  the prose narration has been rephrased in terms of formal Isar
    39  all of the prose narration has been rephrased in terms of formal Isar
    33  language elements.  Just as many textbook-style proofs, there is a
    40  language elements.  Just as many textbook-style proofs, there is a
    34  strong bias towards forward reasoning, and little hierarchical
    41  strong bias towards forward reasoning, and little hierarchical
    35  structure.
    42  structure.
    36 *};
    43 *};
    37 
    44 
    60     hence "f ?a : ?H"; ..;
    67     hence "f ?a : ?H"; ..;
    61     thus "?a <= f ?a"; by (rule Inter_lower);
    68     thus "?a <= f ?a"; by (rule Inter_lower);
    62   qed;
    69   qed;
    63 qed;
    70 qed;
    64 
    71 
    65 
       
    66 end;
    72 end;