# HG changeset patch # User wenzelm # Date 1230849119 -3600 # Node ID 57f0d287375ee9cfc380c8eb550ad892ac115255 # Parent eb782d1dc07ca40effb9c2fbf35de74a955a3573# Parent e841a9de5445e2bbd0b0a4be87f4ec29b46838fd merged; diff -r eb782d1dc07c -r 57f0d287375e src/HOL/Nominal/Examples/SOS.thy --- a/src/HOL/Nominal/Examples/SOS.thy Thu Jan 01 23:31:49 2009 +0100 +++ b/src/HOL/Nominal/Examples/SOS.thy Thu Jan 01 23:31:59 2009 +0100 @@ -328,7 +328,7 @@ have ih2:"\t. e\<^isub>2 \ t \ e\<^isub>2' = t" by fact have ih3: "\t. e\<^isub>1'[x::=e\<^isub>2'] \ t \ e' = t" by fact have app: "App e\<^isub>1 e\<^isub>2 \ t\<^isub>2" by fact - have vc: "x\e\<^isub>1" "x\e\<^isub>2" "x\t\<^isub>2" by fact + have vc: "x\e\<^isub>1" "x\e\<^isub>2" "x\t\<^isub>2" by fact+ then have "x\App e\<^isub>1 e\<^isub>2" by auto from app vc obtain f\<^isub>1 f\<^isub>2 where x1: "e\<^isub>1 \ Lam [x]. f\<^isub>1" and x2: "e\<^isub>2 \ f\<^isub>2" and x3: "f\<^isub>1[x::=f\<^isub>2] \ t\<^isub>2" by (auto elim!: b_App_elim) @@ -515,7 +515,7 @@ have ih:"\\ \ T. \\ Vcloses \; \ \ e : T\ \ \v. \ \ v \ v \ V T" by fact have as\<^isub>1: "\ Vcloses \" by fact have as\<^isub>2: "\ \ Lam [x].e : T" by fact - have fs: "x\\" "x\\" by fact + have fs: "x\\" "x\\" by fact+ from as\<^isub>2 fs obtain T\<^isub>1 T\<^isub>2 where "(i)": "(x,T\<^isub>1)#\ \ e:T\<^isub>2" and "(ii)": "T = T\<^isub>1 \ T\<^isub>2" using fs by (auto elim: t_Lam_elim)