src/Sequents/Washing.thy
 author paulson Mon, 03 May 2021 21:49:30 +0100 changeset 73876 58aed6f71f90 parent 61386 0a29a984a91b permissions -rw-r--r--
A nice cardinality lemma

(*  Title:      Sequents/Washing.thy
Author:     Sara Kalvala
*)

theory Washing
imports ILL
begin

axiomatization
dollar :: o and
quarter :: o and
dirty :: o and
wet :: o and
clean :: o
where
change:
"dollar \<turnstile> (quarter >< quarter >< quarter >< quarter)" and

"quarter , quarter , quarter , quarter , quarter \<turnstile> loaded" and

"dollar , quarter \<turnstile> loaded" and

wash:
"loaded , dirty \<turnstile> wet" and

dry:
"wet, quarter , quarter , quarter \<turnstile> clean"

(* "activate" definitions for use in proof *)

ML \<open>ML_Thms.bind_thms ("changeI", [@{thm context1}] RL ([@{thm change}] RLN (2,[@{thm cut}])))\<close>
ML \<open>ML_Thms.bind_thms ("washI", [@{thm context1}] RL ([@{thm wash}] RLN (2,[@{thm cut}])))\<close>
ML \<open>ML_Thms.bind_thms ("dryI", [@{thm context1}] RL ([@{thm dry}] RLN (2,[@{thm cut}])))\<close>

(* a load of dirty clothes and two dollars gives you clean clothes *)

lemma "dollar , dollar , dirty \<turnstile> clean"