src/LCF/ex/Ex3.thy
author wenzelm
Sat, 30 Dec 2006 12:38:51 +0100
changeset 21960 0574f192b78a
parent 19755 90f80de04c46
child 27208 5fe899199f85
permissions -rw-r--r--
* Proof General: proper undo of final 'end'; discontinued Isabelle/classic;


(* $Id$ *)

header {* Addition with fixpoint of successor *}

theory Ex3
imports LCF
begin

consts
  s     :: "'a => 'a"
  p     :: "'a => 'a => 'a"

axioms
  p_strict:     "p(UU) = UU"
  p_s:          "p(s(x),y) = s(p(x,y))"

declare p_strict [simp] p_s [simp]

lemma example: "p(FIX(s),y) = FIX(s)"
  apply (tactic {* induct_tac "s" 1 *})
  apply (simp (no_asm))
  apply (simp (no_asm))
  done

end