author | wenzelm |
Tue, 11 Dec 2001 16:00:26 +0100 | |
changeset 12466 | 5f4182667032 |
parent 11319 | 8b84ee2cc79c |
permissions | -rw-r--r-- |
1461 | 1 |
(* Title: Conversion.ML |
1048 | 2 |
ID: $Id$ |
1461 | 3 |
Author: Ole Rasmussen |
1048 | 4 |
Copyright 1995 University of Cambridge |
5 |
Logic Image: ZF |
|
6 |
*) |
|
7 |
||
8 |
open Conversion; |
|
9 |
||
3734
33f355f56f82
Much tidying including "qed" instead of result(), and even qed_spec_mp,
paulson
parents:
2469
diff
changeset
|
10 |
AddIs (Sconv.intrs @ Sconv1.intrs); |
1048 | 11 |
|
5268 | 12 |
Goal "m<--->n ==> n<--->m"; |
1732 | 13 |
by (etac Sconv.induct 1); |
14 |
by (etac Sconv1.induct 1); |
|
3734
33f355f56f82
Much tidying including "qed" instead of result(), and even qed_spec_mp,
paulson
parents:
2469
diff
changeset
|
15 |
by (ALLGOALS Blast_tac); |
33f355f56f82
Much tidying including "qed" instead of result(), and even qed_spec_mp,
paulson
parents:
2469
diff
changeset
|
16 |
qed "conv_sym"; |
1048 | 17 |
|
18 |
(* ------------------------------------------------------------------------- *) |
|
19 |
(* Church_Rosser Theorem *) |
|
20 |
(* ------------------------------------------------------------------------- *) |
|
21 |
||
11319 | 22 |
Goal "m<--->n ==> \\<exists>p.(m --->p) & (n ---> p)"; |
1732 | 23 |
by (etac Sconv.induct 1); |
24 |
by (etac Sconv1.induct 1); |
|
4091 | 25 |
by (blast_tac (claset() addIs [red1D1,redD2]) 1); |
26 |
by (blast_tac (claset() addIs [red1D1,redD2]) 1); |
|
27 |
by (blast_tac (claset() addIs [red1D1,redD2]) 1); |
|
1048 | 28 |
by (cut_facts_tac [confluence_beta_reduction] 1); |
1461 | 29 |
by (rewtac confluence_def); |
4091 | 30 |
by (blast_tac (claset() addIs [Sred.trans]) 1); |
3734
33f355f56f82
Much tidying including "qed" instead of result(), and even qed_spec_mp,
paulson
parents:
2469
diff
changeset
|
31 |
qed "Church_Rosser"; |
1048 | 32 |