src/Sequents/ILL/washing.ML
author wenzelm
Sun Sep 18 15:20:08 2005 +0200 (2005-09-18)
changeset 17481 75166ebb619b
parent 16415 d4e2f121e219
permissions -rw-r--r--
converted to Isar theory format;
wenzelm@17481
     1
(* $Id$ *)
wenzelm@17481
     2
wenzelm@6252
     3
(* "activate" definitions for use in proof *)
wenzelm@6252
     4
wenzelm@6252
     5
val changeI = [context1] RL ([change] RLN (2,[cut]));
wenzelm@6252
     6
val load1I =  [context1] RL ([load1]  RLN (2,[cut]));
wenzelm@6252
     7
val washI =   [context1] RL ([wash]   RLN (2,[cut]));
wenzelm@6252
     8
val dryI =    [context1] RL ([dry]    RLN (2,[cut]));
wenzelm@6252
     9
wenzelm@6252
    10
wenzelm@6252
    11
wenzelm@6252
    12
(* a load of dirty clothes and two dollars gives you clean clothes *)
wenzelm@6252
    13
wenzelm@6252
    14
Goal "dollar , dollar , dirty |- clean";
wenzelm@6252
    15
wenzelm@6252
    16
by (best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1);
wenzelm@6252
    17
wenzelm@6252
    18
wenzelm@6252
    19
(* order of premises doesn't matter *)
wenzelm@6252
    20
wenzelm@17481
    21
prove_goal (the_context ()) "dollar , dirty , dollar |- clean"
wenzelm@6252
    22
(fn _ => [best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1]);
wenzelm@6252
    23
wenzelm@6252
    24
wenzelm@6252
    25
(* alternative formulation *)
wenzelm@6252
    26
wenzelm@17481
    27
prove_goal (the_context ()) "dollar , dollar |- dirty -o clean"
wenzelm@6252
    28
(fn _ => [best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1]);