theory Bug imports HOL.Argo HOL.Metis \ \A minimalistic import for faster propagation of changes in Argo\ begin lemma "\ subseteq (Field (image (apsnd Container) (rel (upd h_ent (Object ob) (single (pair c n)))))) s'_entities \ member (w (Field (image (apsnd Container) (rel (upd h_ent (Object ob) (single (pair c n)))))) s'_entities) (Field (image (apsnd Container) (rel (upd h_ent (Object ob) (single (pair c n)))))) \ \ member (w (Field (image (apsnd Container) (rel (upd h_ent (Object ob) (single (pair c n)))))) s'_entities) s'_entities \ s'_entities = insert (Object ob) (union (image Object objects) (image Container containers)) \ subseteq (Field (image (apsnd Container) (rel (upd h_ent (Object ob) (single (pair c n)))))) (insert (Object ob) (union (image Object objects) (image Container containers)))" apply argo oops \ \In case only \<^theory>\HOL.Argo\ is imported \<^theory_text>\ typedecl 'a set consts member :: "'a \ 'a set \ bool" ("_ \ _" [51, 51] 50) consts image :: "('a \ 'b) \ 'a set \ 'b set" (infixr "`" 90) \ \ lemma "w\<^sub>i = \\<^sub>i (Object ob) Container containers \ w\<^sub>i\<^sub>0 = \\<^sub>i (Object ob) Object objects \ Object ob \ Object ` objects \ Object ob = Object (\\<^sub>i (Object ob) Object objects) \ \\<^sub>i (Object ob) Object objects \ objects \ Object ob \ Container ` containers \ Object ob = Container (\\<^sub>i (Object ob) Container containers) \ \\<^sub>i (Object ob) Container containers \ containers \ \\<^sub>e (Object ob) = zero \ \\<^sub>e (Container w\<^sub>i) = one \ zero \ one \ object (Object w\<^sub>i\<^sub>0) = w\<^sub>i\<^sub>0 \ object (Object ob) = ob \ \(ob \ objects) \ \(Object ob \ Object ` objects) \ \(Object ob \ Container ` containers)" apply argo apply metis oops end