src/Sequents/ILL/washing.ML
author wenzelm
Fri, 05 Feb 1999 21:14:17 +0100
changeset 6252 935f183bf406
child 16415 d4e2f121e219
permissions -rw-r--r--
examples made separate dirs;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6252
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     1
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     2
open washing;
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     3
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     4
(* "activate" definitions for use in proof *)
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     5
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     6
val changeI = [context1] RL ([change] RLN (2,[cut]));
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     7
val load1I =  [context1] RL ([load1]  RLN (2,[cut]));
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     8
val washI =   [context1] RL ([wash]   RLN (2,[cut]));
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
     9
val dryI =    [context1] RL ([dry]    RLN (2,[cut]));
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    10
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    11
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    12
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    13
(* a load of dirty clothes and two dollars gives you clean clothes *)
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    14
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    15
Goal "dollar , dollar , dirty |- clean";
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    16
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    17
by (best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1);
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    18
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    19
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    20
(* order of premises doesn't matter *)
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    21
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    22
prove_goal thy "dollar , dirty , dollar |- clean"
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    23
(fn _ => [best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1]);
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    24
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    25
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    26
(* alternative formulation *)
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    27
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    28
prove_goal thy "dollar , dollar |- dirty -o clean"
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    29
(fn _ => [best_tac (lazy_cs add_safes (changeI @ load1I @ washI @ dryI)) 1]);
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    30
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    31
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    32
935f183bf406 examples made separate dirs;
wenzelm
parents:
diff changeset
    33