Loading theory "FOL-ex.Classical" Loading theory "FOL-ex.If" ### theory "FOL-ex.If" ### 0.090s elapsed time, 0.180s cpu time, 0.000s GC time Loading theory "FOL-ex.Intro" ### theory "FOL-ex.Intro" ### 0.024s elapsed time, 0.048s cpu time, 0.000s GC time Loading theory "FOL-ex.Miniscope" ### Ignoring duplicate rewrite rule: ### \ (?P1 \ ?Q1) \ \ ?P1 \ \ ?Q1 ### Ignoring duplicate rewrite rule: ### \ (?P1 \ ?Q1) \ \ ?P1 \ \ ?Q1 ### Ignoring duplicate rewrite rule: ### \ \ ?Q \ ?Q ### Ignoring duplicate rewrite rule: ### \ (\x. ?P1(x)) \ \x. \ ?P1(x) ### Ignoring duplicate rewrite rule: ### \ (?P1 \ ?Q1) \ ?P1 \ \ ?Q1 ### Ignoring duplicate rewrite rule: ### \x. ?Q \ ?Q val mini_ss = Simpset ({depth = (0, ref false), prems = [], rules = Net {atoms = {}, comb = Net {atoms = {("IFOL.Ex", Net {atoms = {}, comb = Net {atoms = {("IFOL.eq", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "......", extra = false, fo = true, lhs = Const ("...", ...) $ Abs ("...", "?'b1", ...), name = "FOL.IFOL_simps_37", ...}]})}, comb = Leaf [], var = Leaf []}, var = Leaf [{elhs = "\x. ?P1 \ ?Q1(x)", extra = false, fo = false, lhs = Const ("IFOL.Ex", "(... ... ...) \ o") $ Abs ("x", "?'f1", Const ("...", ...) $ Var ((...), "o") $ ...), name = "Miniscope.mini_simps_15", perm = false, thm = "\x. ?P1 \ ?Q1......... \ ?P1 \ (...x... ......)"}, {elhs = "\x. ?P1(x) \ ?Q1", extra = false, fo = false, lhs = Const ("IFOL.Ex", "(...) ... o") $ Abs ("x", "?'e1", Const ("...", "o \ o \ o") $ ... $ ...), name = "Miniscope.mini_simps_14", perm = false, thm = "\x. ...... ... ?Q1 \ (......... ...) \ ?Q1"}, {elhs = "\x. ?P1......... \ ?Q1.........", extra = false, fo = false, lhs = Const ("IFOL.Ex", "... ... ...") $ Abs ("x", "...", ... $ ... $ ...), name = "Miniscope.mini_simps_13", perm = false, thm = "...x... ... ... ... \ (...) ... (...)"}, {elhs = "\x. ?P1 ... ......", extra = false, fo = false, lhs = Const ("IFOL.Ex", "...") $ Abs ("x", "...", ...), name = "Miniscope.mini_simps_12", perm = false, thm = "......... ... ... ... ... ..."}, {elhs = "...x... ... ... ...", extra = false, fo = false, lhs = Const ("IFOL.Ex", "...") $ Abs ("x", ..., ...), name = "Miniscope.mini_simps_11", perm = false, thm = "... ... ..."}, {elhs = "......... ...", extra = false, fo = true, lhs = Const ("...", ...) $ Abs ("...", "?'a1", ...), name = "Miniscope.mini_simps_10", ...}, {elhs = "...", extra = false, fo = false, lhs = Const ("...", "(?'b1 \ o) \ o") $ ..., ...}, {elhs = "...", extra = false, fo = false, ...}, {elhs = ..., extra = false, ...}, ...]}), ("IFOL.All", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "\x. ?P1 \ ?Q1(x)", extra = false, fo = false, lhs = Const ("IFOL.All", "(...) ... o") $ Abs ("x", "?'f1", Const ("...", "o \ o \ o") $ ... $ ...), name = "Miniscope.mini_simps_21", perm = false, thm = "\x. ?P1 ... ...... \ ?P1 \ (......... ...)"}, {elhs = "\x. ?P1......... \ ?Q1", extra = false, fo = false, lhs = Const ("IFOL.All", "... ... ...") $ Abs ("x", "...", ... $ ... $ ...), name = "Miniscope.mini_simps_20", perm = false, thm = "...x... ... ... ... \ (...) ... ?Q1"}, {elhs = "\x. ?P1 ... ......", extra = false, fo = false, lhs = Const ("IFOL.All", "...") $ Abs ("x", "...", ...), name = "Miniscope.mini_simps_19", perm = false, thm = "......... ... ... ... ... ..."}, {elhs = "...x... ... ... ...", extra = false, fo = false, lhs = Const ("IFOL.All", "...") $ Abs ("x", ..., ...), name = "Miniscope.mini_simps_18", perm = false, thm = "... ... ..."}, {elhs = "......... ...", extra = false, fo = false, lhs = Const ("...", ...) $ Abs ("...", "?'b1", ...), name = "Miniscope.mini_simps_17", ...}, {elhs = "...", extra = false, fo = false, lhs = Const ("...", "(?'b1 \ o) \ o") $ ..., ...}, {elhs = "...", extra = false, fo = false, ...}, {elhs = ..., extra = false, ...}, ...]}), ("IFOL.Not", Net {atoms = {("IFOL.True", Leaf [{elhs = "\ True", extra = false, fo = true, lhs = Const ("IFOL.Not", "...") $ Const ("IFOL.True", "..."), name = "FOL.IFOL_simps_20", perm = false, thm = "... True ... False"}]), ("IFOL.False", Leaf [{elhs = "\ False", extra = false, fo = true, lhs = Const ("IFOL.Not", "...") $ Const ("...", ...), name = "FOL.IFOL_simps_19", perm = false, thm = "... ... ... ..."}])}, comb = Net {atoms = {("IFOL.Ex", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "...", extra = false, fo = true, ...}, {elhs = ..., extra = false, ...}]}), ("IFOL.All", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = ..., extra = false, ...}]}), ("IFOL.Not", Net {atoms = {}, comb = Leaf [...], var = Leaf [...]})}, comb = Net {atoms = {("IFOL.iff", Net {atoms = {}, comb = Leaf [...], var = Net {atoms = {}, ...}}), ("IFOL.imp", Net {atoms = {}, comb = ..., var = ...}), ("IFOL.conj", Net {atoms = {}, ...}), ("IFOL.disj", ...)}, comb = Leaf [], var = Leaf []}, var = Leaf []}, var = Leaf []}), ("Pure.all", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "\x. PROP ?V", extra = false, fo = true, lhs = Const ("Pure.all", "...") $ Abs ("x", "...", ...), name = "FOL.meta_simps_1", perm = false, thm = "(...) ... PROP ?V"}]})}, comb = Net {atoms = {("IFOL.eq", Net {atoms = {}, comb = Leaf [], var = Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "?a1 ... ?a1", extra = false, fo = true, lhs = Const ("IFOL.eq", "...") $ Var (("...", 1), ...) $ Var ((...), "?'a1"), name = "FOL.IFOL_simps_1", perm = false, thm = "... ... ..."}]}}), ("IFOL.iff", Net {atoms = {("IFOL.True", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "...", extra = false, fo = true, lhs = Const ("...", "o \ o \ o") $ ... $ ..., ...}]}), ("IFOL.False", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "...", extra = false, fo = true, ...}]})}, comb = Net {atoms = {("IFOL.Not", Net {atoms = {}, comb = Leaf [], var = Net {atoms = {}, comb = ..., var = ...}})}, comb = Net {atoms = {("IFOL.imp", Net {atoms = {}, comb = ..., var = ...})}, comb = Leaf [], var = Leaf []}, var = Leaf []}, var = Net {atoms = {("IFOL.True", Leaf [{elhs = "...", extra = false, fo = true, lhs = Const ("...", "o \ o \ o") $ ... $ ..., ...}]), ("IFOL.False", Leaf [{elhs = "...", extra = false, fo = true, ...}])}, comb = Leaf [], var = Leaf [{elhs = "... ... ...", extra = false, fo = true, lhs = Const ("...", ...) $ Var ((...), "o") $ ..., name = "Miniscope.mini_simps_8", ...}, {elhs = "...", extra = false, fo = true, lhs = Const ("...", "o \ o \ o") $ ... $ ..., ...}]}}), ("IFOL.imp", Net {atoms = {("IFOL.True", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = "...", extra = false, fo = true, ...}]}), ("IFOL.False", Net {atoms = {}, comb = Leaf [], var = Leaf [{elhs = ..., extra = false, ...}]})}, comb = Net {atoms = {("IFOL.Not", Net {atoms = {}, comb = Leaf [...], var = Net {atoms = {}, ...}})}, comb = Leaf [], var = Leaf []}, var = Net {atoms = {("IFOL.True", Leaf [{elhs = "...", extra = false, fo = true, ...}]), ("IFOL.False", Leaf [{elhs = ..., extra = false, ...}])}, comb = Net {atoms = {("IFOL.Not", Net {atoms = {}, ...})}, comb = Leaf [], var = Leaf []}, var = Leaf [{elhs = "...", extra = false, fo = true, lhs = Const ("...", "o \ o \ o") $ ... $ ..., ...}, {elhs = "...", extra = false, fo = true, ...}]}}), ("Pure.imp", Net {atoms = {}, comb = Net {atoms = {("IFOL.Trueprop", Net {atoms = {...}, comb = ..., var = ...})}, comb = Leaf [], var = Leaf []}, var = Leaf []}), ("IFOL.conj", Net {atoms = {("IFOL.True", Net {atoms = {}, comb = Leaf [...], var = Leaf [...]}), ("IFOL.False", Net {atoms = {}, comb = ..., var = ...})}, comb = Net {atoms = {("IFOL.Not", Net {atoms = {}, ...})}, comb = Net {atoms = {...}, comb = ..., var = ...}, var = Leaf []}, var = Net {atoms = {("IFOL.True", Leaf [...]), ("IFOL.False", ...)}, comb = Net {atoms = {...}, comb = ..., var = ...}, var = Leaf [{elhs = ..., extra = false, ...}]}}), ("IFOL.disj", Net {atoms = {("IFOL.True", Net {atoms = {}, comb = ..., var = ...}), ("IFOL.False", Net {atoms = {}, ...})}, comb = Net {atoms = {("IFOL.Not", ...)}, comb = Net {atoms = {...}, ...}, var = Leaf [...]}, var = Net {atoms = {("IFOL.True", ...), ...}, comb = Net {atoms = {...}, ...}, var = Leaf [...]}})}, comb = Leaf [], var = Leaf []}, var = Leaf []}, var = Leaf []}}, {congs = ([((true, "IFOL.imp"), "\?P \ ?P'; ?P' \ ?Q \ ?Q'\ \ ?P \ ?Q \ ?P' \ ?Q'")], []), loop_tacs = [], mk_rews = {mk = fn, mk_cong = fn, mk_eq_True = fn, mk_sym = fn, reorient = fn}, procs = Net {atoms = {}, comb = Net {atoms = {("IFOL.Ex", Net {atoms = {}, comb = Leaf [], var = Leaf [Proc {lhs = Const ("IFOL.Ex", "(...) ... o") $ Abs ("x", "?'a", Var ((...), "?'a \ o") $ ...), name = "FOL.defined_Ex", proc = fn, stamp = Stamp 62004}]}), ("IFOL.All", Net {atoms = {}, comb = Leaf [], var = Leaf [Proc {lhs = Const ("IFOL.All", "... ... ...") $ Abs ("x", "...", ... $ ...), name = "FOL.defined_All", proc = fn, stamp = Stamp 62050}]})}, comb = Leaf [], var = Leaf []}, var = Leaf []}, solvers = ([Solver {id = Stamp 61872, name = "FOL unsafe", solver = fn}], [Solver {id = Stamp 61870, name = "FOL safe", solver = fn}]), subgoal_tac = fn, term_ord = fn}): simpset val mini_tac = fn: Proof.context -> int -> tactic ### theory "FOL-ex.Miniscope" ### 0.057s elapsed time, 0.112s cpu time, 0.000s GC time Loading theory "FOL-ex.Nat" ### theory "FOL-ex.Nat" ### 0.033s elapsed time, 0.064s cpu time, 0.000s GC time Loading theory "FOL-ex.Nat_Class" class nat = term + fixes Zero :: "'a" and Suc :: "'a \ 'a" and rec :: "'a \ 'a \ ('a \ 'a \ 'a) \ 'a" assumes "induct": "\P n. \P(0); \x. P(x) \ P(Suc(x))\ \ P(n)" and "Suc_inject": "\m n. Suc(m) = Suc(n) \ m = n" and "Suc_neq_Zero": "\m R. Suc(m) = 0 \ R" and "rec_Zero": "\a f. rec(0, a, f) = a" and "rec_Suc": "\m a f. rec(Suc(m), a, f) = f(m, rec(m, a, f))" ### theory "FOL-ex.Nat_Class" ### 0.067s elapsed time, 0.132s cpu time, 0.000s GC time Loading theory "FOL-ex.Natural_Numbers" ### theory "FOL-ex.Natural_Numbers" ### 0.031s elapsed time, 0.064s cpu time, 0.000s GC time Loading theory "FOL-ex.Prolog" val prolog_tac = fn: Proof.context -> tactic ### theory "FOL-ex.Prolog" ### 0.099s elapsed time, 0.196s cpu time, 0.000s GC time Loading theory "FOL-ex.Propositional_Cla" ### theory "FOL-ex.Propositional_Cla" ### 0.059s elapsed time, 0.116s cpu time, 0.000s GC time Loading theory "FOL-ex.Quantifiers_Cla" ### theory "FOL-ex.Classical" ### 0.514s elapsed time, 1.016s cpu time, 0.000s GC time Loading theory "FOL-ex.Foundation" ### theory "FOL-ex.Quantifiers_Cla" ### 0.056s elapsed time, 0.112s cpu time, 0.000s GC time Loading theory "FOL-ex.Intuitionistic" ### theory "FOL-ex.Foundation" ### 0.028s elapsed time, 0.056s cpu time, 0.000s GC time Loading theory "FOL-ex.Propositional_Int" ### theory "FOL-ex.Propositional_Int" ### 0.062s elapsed time, 0.120s cpu time, 0.000s GC time Loading theory "FOL-ex.Quantifiers_Int" ### theory "FOL-ex.Quantifiers_Int" ### 0.075s elapsed time, 0.148s cpu time, 0.000s GC time ### theory "FOL-ex.Intuitionistic" ### 0.293s elapsed time, 0.580s cpu time, 0.000s GC time Loading theory "FOL-ex.Locale_Test1" (required by "FOL-ex.Locale_Test") ### Ambiguous input (line 22 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") produces 2 parse trees: ### ("\<^const>IFOL.Trueprop" ### ("\<^const>IFOL.eq" ### ("\<^const>Locale_Test1.minus" ### ("\<^const>Locale_Test1.minus" ("_position" x))) ### ("_position" x))) ### ("\<^const>IFOL.Trueprop" ### ("\<^const>Locale_Test1.minus" ### ("\<^const>IFOL.eq" ("\<^const>Locale_Test1.minus" ("_position" x)) ### ("_position" x)))) ### Fortunately, only one parse tree is well-formed and type-correct, ### but you may still want to disambiguate your grammar or your input. locale param1 fixes p :: "'a" locale param1 fixes p :: "'a" locale param2 fixes p :: "'b" locale param2 fixes p :: "'b" locale param3 fixes p :: "'a \ 'b \ 'c" (infix ".." 50) locale param3 fixes p :: "'a \ 'b \ 'c" (infix ".." 50) locale param4 fixes p :: "'a \ 'a \ 'a" (infix ".." 50) locale param4 fixes p :: "'a \ 'a \ 'a" (infix ".." 50) locale constraint1 fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) assumes "constraint1(( ** ))" locale constraint1 fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) assumes "constraint1(( ** ))" notes "constraint1_axioms" = (\constraint1(( ** ))\) ["attribute" ""] notes "l_id" = \?x ** ?y = ?x\ notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z)\ locale constraint2 fixes p :: "'a" and q :: "'a" assumes "constraint2(p, q)" locale constraint2 fixes p :: "'a" and q :: "'a" assumes "constraint2(p, q)" notes "constraint2_axioms" = (\constraint2(p, q)\) ["attribute" ""] locale semi fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) assumes "semi(( ** ))" locale semi fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) assumes "semi(( ** ))" notes "semi_axioms" = (\semi(( ** ))\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z)\ semi(?prod) \ \x y z. ?prod(?prod(x, y), z) = ?prod(x, ?prod(y, z)) locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** ))\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z)\ notes "lgrp_axioms" = (\lgrp(( ** ), one, inv)\) ["attribute" ""] notes "lone" = \one ** ?x = ?x\ notes "linv" = \inv(?x) ** ?x = one\ lgrp(?prod, ?one, ?inv) \ semi(?prod) \ lgrp_axioms(?prod, ?one, ?inv) lgrp_axioms(?prod, ?one, ?inv) \ (\x. ?prod(?one, x) = x) \ (\x. ?prod(?inv(x), x) = ?one) locale add_lgrp fixes sum :: "'a \ 'a \ 'a" (infixl "++" 60) and zero :: "'a" and neg :: "'a \ 'a" assumes "add_lgrp((++), zero, neg)" locale add_lgrp fixes sum :: "'a \ 'a \ 'a" (infixl "++" 60) and zero :: "'a" and neg :: "'a \ 'a" assumes "add_lgrp((++), zero, neg)" notes "semi_axioms" = (\semi((++))\) ["attribute" ""] notes "assoc" = \?x ++ ?y ++ ?z = ?x ++ (?y ++ ?z)\ notes "add_lgrp_axioms" = (\add_lgrp((++), zero, neg)\) ["attribute" ""] notes "lzero" = \zero ++ ?x = ?x\ notes "lneg" = \neg(?x) ++ ?x = zero\ add_lgrp(?sum, ?zero, ?neg) \ semi(?sum) \ add_lgrp_axioms(?sum, ?zero, ?neg) add_lgrp_axioms(?sum, ?zero, ?neg) \ (\x. ?sum(?zero, x) = x) \ (\x. ?sum(?neg(x), x) = ?zero) locale rev_lgrp fixes sum :: "'a \ 'a \ 'a" (infixl "++" 60) assumes "rev_lgrp((++))" locale rev_lgrp fixes sum :: "'a \ 'a \ 'a" (infixl "++" 60) assumes "rev_lgrp((++))" notes "semi_axioms" = (\semi(\x y. y ++ x)\) ["attribute" ""] notes "assoc" = \?z ++ (?y ++ ?x) = ?z ++ ?y ++ ?x\ notes "rev_lgrp_axioms" = (\rev_lgrp((++))\) ["attribute" ""] rev_lgrp(?sum) \ semi(\x y. ?sum(y, x)) locale hom fixes f :: "'a \ 'a \ 'a" and g :: "'b \ 'b \ 'b" assumes "hom(f, g)" locale hom fixes f :: "'a \ 'a \ 'a" and g :: "'b \ 'b \ 'b" assumes "hom(f, g)" notes "f.semi_axioms" = (\semi(f)\) ["attribute" ""] notes "f.assoc" = \f(f(?x, ?y), ?z) = f(?x, f(?y, ?z))\ notes "g.semi_axioms" = (\semi(g)\) ["attribute" ""] notes "g.assoc" = \g(g(?x, ?y), ?z) = g(?x, g(?y, ?z))\ notes "hom_axioms" = (\hom(f, g)\) ["attribute" ""] hom(?f, ?g) \ semi(?f) \ semi(?g) locale perturbation fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and delta :: "'a \ 'a" assumes "perturbation(( ** ), delta)" locale perturbation fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and delta :: "'a \ 'a" assumes "perturbation(( ** ), delta)" notes "semi_axioms" = (\semi(( ** ))\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z)\ notes "d.semi_axioms" = (\semi(\x y. delta(x) ** delta(y))\) ["attribute" ""] notes "d.assoc" = \delta(delta(?x) ** delta(?y)) ** delta(?z) = delta(?x) ** delta(delta(?y) ** delta(?z))\ notes "perturbation_axioms" = (\perturbation(( ** ), delta)\) ["attribute" ""] perturbation(?prod, ?delta) \ semi(?prod) \ semi(\x y. ?prod(?delta(x), ?delta(y))) locale pert_hom fixes f :: "'a \ 'a \ 'a" and d1 :: "'a \ 'a" and d2 :: "'a \ 'a" assumes "pert_hom(f, d1, d2)" locale pert_hom fixes f :: "'a \ 'a \ 'a" and d1 :: "'a \ 'a" and d2 :: "'a \ 'a" assumes "pert_hom(f, d1, d2)" notes "d1.semi_axioms" = (\semi(f)\) ["attribute" ""] notes "d1.assoc" = \f(f(?x, ?y), ?z) = f(?x, f(?y, ?z))\ notes "d1.d.semi_axioms" = (\semi(\x y. f(d1(x), d1(y)))\) ["attribute" ""] notes "d1.d.assoc" = \f(d1(f(d1(?x), d1(?y))), d1(?z)) = f(d1(?x), d1(f(d1(?y), d1(?z))))\ notes "d1.perturbation_axioms" = (\perturbation(f, d1)\) ["attribute" ""] notes "d2.d.semi_axioms" = (\semi(\x y. f(d2(x), d2(y)))\) ["attribute" ""] notes "d2.d.assoc" = \f(d2(f(d2(?x), d2(?y))), d2(?z)) = f(d2(?x), d2(f(d2(?y), d2(?z))))\ notes "d2.perturbation_axioms" = (\perturbation(f, d2)\) ["attribute" ""] notes "pert_hom_axioms" = (\pert_hom(f, d1, d2)\) ["attribute" ""] pert_hom(?f, ?d1.0, ?d2.0) \ perturbation(?f, ?d1.0) \ perturbation(?f, ?d2.0) locale pert_hom' fixes f :: "'a \ 'a \ 'a" and d1 :: "'a \ 'a" and d2 :: "'a \ 'a" assumes "pert_hom'(f, d1, d2)" locale pert_hom' fixes f :: "'a \ 'a \ 'a" and d1 :: "'a \ 'a" and d2 :: "'a \ 'a" assumes "pert_hom'(f, d1, d2)" notes "semi_axioms" = (\semi(f)\) ["attribute" ""] notes "assoc" = \f(f(?x, ?y), ?z) = f(?x, f(?y, ?z))\ notes "d1.d.semi_axioms" = (\semi(\x y. f(d1(x), d1(y)))\) ["attribute" ""] notes "d1.d.assoc" = \f(d1(f(d1(?x), d1(?y))), d1(?z)) = f(d1(?x), d1(f(d1(?y), d1(?z))))\ notes "d1.perturbation_axioms" = (\perturbation(f, d1)\) ["attribute" ""] notes "d2.d.semi_axioms" = (\semi(\x y. f(d2(x), d2(y)))\) ["attribute" ""] notes "d2.d.assoc" = \f(d2(f(d2(?x), d2(?y))), d2(?z)) = f(d2(?x), d2(f(d2(?y), d2(?z))))\ notes "d2.perturbation_axioms" = (\perturbation(f, d2)\) ["attribute" ""] notes "pert_hom'_axioms" = (\pert_hom'(f, d1, d2)\) ["attribute" ""] pert_hom'(?f, ?d1.0, ?d2.0) \ semi(?f) \ perturbation(?f, ?d1.0) \ perturbation(?f, ?d2.0) locale logic fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic((&&), lnot)" locale logic fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic((&&), lnot)" notes "logic_axioms" = (\logic((&&), lnot)\) ["attribute" ""] notes "assoc" = \?x && ?y && ?z = ?x && (?y && ?z)\ notes "notnot" = \-- -- ?x = ?x\ notes (\TERM _\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes "lor_def" = \?x || ?y = -- (-- ?x && -- ?y)\ notes (\TERM _\) ["attribute" ""] locale use_decl fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "use_decl((&&), lnot)" locale extra_type fixes a :: "'a" and P :: "'a \ 'b \ o" locale use_decl fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "use_decl((&&), lnot)" notes "l.logic_axioms" = (\logic((&&), lnot)\) ["attribute" ""] notes "l.assoc" = \?x && ?y && ?z = ?x && (?y && ?z)\ notes "l.notnot" = \-- -- ?x = ?x\ notes (\TERM _\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes "l.lor_def" = \?x || ?y = -- (-- ?x && -- ?y)\ notes (\TERM _\) ["attribute" ""] notes "semi_axioms" = (\semi((||))\) ["attribute" ""] notes "assoc" = \?x || ?y || ?z = (?x || (?y || ?z))\ notes "use_decl_axioms" = (\use_decl((&&), lnot)\) ["attribute" ""] use_decl(?land, ?lnot) \ logic(?land, ?lnot) \ semi(logic.lor(?land, ?lnot)) "extra_type.test" :: "('a \ 'b \ o) \ 'a \ o" extra_type.test(?P, ?x) \ (\b. ?P(?x, b)) extra_type.test(\x y. x = 0, ?x) \ (\b. ?x = 0) val check_syntax = fn: Proof.context -> thm -> string -> unit locale syntax fixes p1 :: "'a \ 'b" and p2 :: "'b \ o" D1(?x) \ \ p2(p1(?x)) D2(?x) \ \ p2(?x) syntax.d1(?p1.0, ?p2.0, ?x) \ \ ?p2.0(?p1.0(?x)) syntax.d2(?p2.0, ?x) \ \ ?p2.0(?x) locale syntax' fixes p1 :: "'a \ 'a" and p2 :: "'a \ o" D1(?x) \ \ p2(p1(?x)) D2(?x) \ \ p2(?x) val it = (): unit val it = (): unit locale syntax'' fixes p3 :: "'a \ 'b" and p2 :: "'b \ o" d1(?x) \ \ p2(p3(?x)) D2(?x) \ \ p2(?x) val it = (): unit val it = (): unit logic(?land, ?lnot) \ ?land(?land(?x, ?y), ?z) = ?land(?x, ?land(?y, ?z)) logic(?land, ?lnot) \ logic.lor(?land, ?lnot, ?x, ?y) = ?lnot(?land(?lnot(?x), ?lnot(?y))) locale logic_def fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lor :: "'a \ 'a \ 'a" (infixl "||" 50) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic_def((&&), lnot)" defines "\x y. x || y \ -- (-- x && -- y)" ?x || ?y \ -- (-- ?x && -- ?y) [\x y. x || y \ -- (-- x && -- y), logic_def((&&), lnot)] locale logic_def2 fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lor :: "'a \ 'a \ 'a" (infixl "||" 50) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic_def2((&&), lnot)" defines "\x y. x || y \ -- (-- x && -- y)" locale semi_hom_loc fixes prod :: "'a \ 'a \ 'a" and sum :: "'b \ 'b \ 'b" and h :: "'a \ 'b" assumes "semi_hom_loc(prod, sum, h)" \semi_hom_loc(?proda, ?suma, ?ha); semi_hom(?prod, ?sum, ?h)\ \ ?h(?prod(?x, ?y)) = ?sum(?h(?x), ?h(?y)) locale rgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "rgrp(( ** ), one, inv)" locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [lgrp(( ** ), one, inv)]\ notes "lgrp_axioms" = (\lgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "lone" = \one ** ?x = ?x [lgrp(( ** ), one, inv)]\ notes "linv" = \inv(?x) ** ?x = one [lgrp(( ** ), one, inv)]\ notes theorem "lcancel" = \?x ** ?y = ?x ** ?z \ ?y = ?z [lgrp(( ** ), one, inv)]\ locale rgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "rgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [rgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [rgrp(( ** ), one, inv)]\ notes "rgrp_axioms" = (\rgrp(( ** ), one, inv) [rgrp(( ** ), one, inv)]\) ["attribute" ""] notes "rone" = \?x ** one = ?x [rgrp(( ** ), one, inv)]\ notes "rinv" = \?x ** inv(?x) = one [rgrp(( ** ), one, inv)]\ notes theorem "rcancel" = \?y ** ?x = ?z ** ?x \ ?y = ?z [rgrp(( ** ), one, inv)]\ locale order fixes less :: "'a \ 'a \ o" (infix "<<" 50) assumes "order((<<))" locale order' fixes less :: "'a \ 'a \ o" (infix "<<" 50) assumes "order'((<<))" locale order_with_def fixes less :: "'a \ 'a \ o" (infix "<<" 50) assumes "order_with_def((<<))" locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [lgrp(( ** ), one, inv)]\ notes "right.rgrp_axioms" = (\rgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "right.rone" = \?x ** one = ?x [lgrp(( ** ), one, inv)]\ notes "right.rinv" = \?x ** inv(?x) = one [lgrp(( ** ), one, inv)]\ notes theorem "right.rcancel" = \?y ** ?x = ?z ** ?x \ ?y = ?z [lgrp(( ** ), one, inv)]\ notes "lgrp_axioms" = (\lgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "lone" = \one ** ?x = ?x [lgrp(( ** ), one, inv)]\ notes "linv" = \inv(?x) ** ?x = one [lgrp(( ** ), one, inv)]\ notes theorem "lcancel" = \?x ** ?y = ?x ** ?z \ ?y = ?z [lgrp(( ** ), one, inv)]\ locale A5 fixes A :: "o" and B :: "o" and C :: "o" and D :: "o" and E :: "o" assumes "A5(A, B, C, D, E)" locale rgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "rgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [rgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [rgrp(( ** ), one, inv)]\ notes "left.lgrp_axioms" = (\lgrp(( ** ), one, inv) [rgrp(( ** ), one, inv)]\) ["attribute" ""] notes "left.lone" = \one ** ?x = ?x [rgrp(( ** ), one, inv)]\ notes "left.linv" = \inv(?x) ** ?x = one [rgrp(( ** ), one, inv)]\ notes theorem "left.lcancel" = \?x ** ?y = ?x ** ?z \ ?y = ?z [rgrp(( ** ), one, inv)]\ notes "rgrp_axioms" = (\rgrp(( ** ), one, inv) [rgrp(( ** ), one, inv)]\) ["attribute" ""] notes "rone" = \?x ** one = ?x [rgrp(( ** ), one, inv)]\ notes "rinv" = \?x ** inv(?x) = one [rgrp(( ** ), one, inv)]\ notes theorem "rcancel" = \?y ** ?x = ?z ** ?x \ ?y = ?z [rgrp(( ** ), one, inv)]\ locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [lgrp(( ** ), one, inv)]\ notes "right.rgrp_axioms" = (\rgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "right.rone" = \?x ** one = ?x [lgrp(( ** ), one, inv)]\ notes "right.rinv" = \?x ** inv(?x) = one [lgrp(( ** ), one, inv)]\ notes theorem "right.rcancel" = \?y ** ?x = ?z ** ?x \ ?y = ?z [lgrp(( ** ), one, inv)]\ notes "lgrp_axioms" = (\lgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "lone" = \one ** ?x = ?x [lgrp(( ** ), one, inv)]\ notes "linv" = \inv(?x) ** ?x = one [lgrp(( ** ), one, inv)]\ notes theorem "lcancel" = \?x ** ?y = ?x ** ?z \ ?y = ?z [lgrp(( ** ), one, inv)]\ locale order fixes less :: "'a \ 'a \ o" (infix "<<" 50) assumes "order((<<))" notes "dual.order_axioms" = (\order(\x y. y << x) [order((<<))]\) ["attribute" ""] notes "dual.refl" = \?x << ?x [order((<<))]\ notes "dual.trans" = \\?y << ?x; ?z << ?y\ \ ?z << ?x [order((<<))]\ notes "order_axioms" = (\order((<<)) [order((<<))]\) ["attribute" ""] notes "refl" = \?x << ?x [order((<<))]\ notes "trans" = \\?x << ?y; ?y << ?z\ \ ?x << ?z [order((<<))]\ local facts: assoc: ?x ** ?y ** ?z = ?x ** (?y ** ?z) [lgrp(( ** ), one, inv)] lcancel: ?x ** ?y = ?x ** ?z \ ?y = ?z [lgrp(( ** ), one, inv)] lgrp_axioms: lgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)] linv: inv(?x) ** ?x = one [lgrp(( ** ), one, inv)] lone: one ** ?x = ?x [lgrp(( ** ), one, inv)] semi_axioms: semi(( ** )) [lgrp(( ** ), one, inv)] locale order_with_def fixes less :: "'a \ 'a \ o" (infix "<<" 50) assumes "order_with_def((<<))" notes "order'_axioms" = (\order'((<<)) [order_with_def((<<))]\) ["attribute" ""] notes "refl" = \?x << ?x [order_with_def((<<))]\ notes "trans" = \\?x << ?y; ?y << ?z\ \ ?x << ?z [order_with_def((<<))]\ notes "dual.order'_axioms" = (\order'((>>)) [order_with_def((<<))]\) ["attribute" ""] notes "dual.refl" = \?x >> ?x [order_with_def((<<))]\ notes "dual.trans" = \\?x >> ?y; ?y >> ?z\ \ ?x >> ?z [order_with_def((<<))]\ notes "order_with_def_axioms" = (\order_with_def((<<)) [order_with_def((<<))]\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes "greater_def" = \?x >> ?y \ ?y << ?x [order_with_def((<<))]\ notes (\TERM _\) ["attribute" ""] local facts: A5_axioms: A5(A, B, C, D, E) [A5(A, B, C, D, E)] eq: A \ B \ C \ D \ E [A5(A, B, C, D, E)] local facts: 1.1.A5_axioms: A5(A, B, E, C, D) [A5(A, B, C, D, E)] 1.1.eq: A \ B \ E \ C \ D [A5(A, B, C, D, E)] 1.A5_axioms: A5(A, B, D, E, C) [A5(A, B, C, D, E)] 1.eq: A \ B \ D \ E \ C [A5(A, B, C, D, E)] A5_axioms: A5(A, B, C, D, E) [A5(A, B, C, D, E)] eq: A \ B \ C \ D \ E [A5(A, B, C, D, E)] local facts: 1.1.2.1.1.A5_axioms: A5(E, B, A, D, C) [A5(A, B, C, D, E)] 1.1.2.1.1.eq: E \ B \ A \ D \ C [A5(A, B, C, D, E)] 1.1.2.1.2.1.1.A5_axioms: A5(C, B, E, D, A) [A5(A, B, C, D, E)] 1.1.2.1.2.1.1.eq: C \ B \ E \ D \ A [A5(A, B, C, D, E)] 1.1.2.1.2.1.A5_axioms: A5(C, B, A, E, D) [A5(A, B, C, D, E)] 1.1.2.1.2.1.eq: C \ B \ A \ E \ D [A5(A, B, C, D, E)] 1.1.2.1.2.2.1.1.A5_axioms: A5(D, B, C, E, A) [A5(A, B, C, D, E)] 1.1.2.1.2.2.1.1.eq: D \ B \ C \ E \ A [A5(A, B, C, D, E)] 1.1.2.1.2.2.1.A5_axioms: A5(D, B, A, C, E) [A5(A, B, C, D, E)] 1.1.2.1.2.2.1.eq: D \ B \ A \ C \ E [A5(A, B, C, D, E)] 1.1.2.1.2.2.A5_axioms: A5(D, B, E, A, C) [A5(A, B, C, D, E)] 1.1.2.1.2.2.eq: D \ B \ E \ A \ C [A5(A, B, C, D, E)] 1.1.2.1.2.A5_axioms: A5(C, B, D, A, E) [A5(A, B, C, D, E)] 1.1.2.1.2.eq: C \ B \ D \ A \ E [A5(A, B, C, D, E)] 1.1.2.1.A5_axioms: A5(E, B, C, A, D) [A5(A, B, C, D, E)] 1.1.2.1.eq: E \ B \ C \ A \ D [A5(A, B, C, D, E)] 1.1.2.A5_axioms: A5(E, B, D, C, A) [A5(A, B, C, D, E)] 1.1.2.eq: E \ B \ D \ C \ A [A5(A, B, C, D, E)] 1.1.A5_axioms: A5(A, B, E, C, D) [A5(A, B, C, D, E)] 1.1.eq: A \ B \ E \ C \ D [A5(A, B, C, D, E)] 1.A5_axioms: A5(A, B, D, E, C) [A5(A, B, C, D, E)] 1.eq: A \ B \ D \ E \ C [A5(A, B, C, D, E)] A5_axioms: A5(A, B, C, D, E) [A5(A, B, C, D, E)] eq: A \ B \ C \ D \ E [A5(A, B, C, D, E)] locale trivial fixes P :: "o" and Q :: "o" assumes "trivial(P, Q)" locale trivial fixes P :: "o" and Q :: "o" assumes "trivial(P, Q)" val it = []: thm list locale logic2 fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic2((&&), lnot)" locale logic_a fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic_a((&&), lnot)" locale logic_b fixes land :: "'a \ 'a \ 'a" (infixl "&&" 55) and lnot :: "'a \ 'a" ("-- _" [60] 60) assumes "logic_b((&&), lnot)" locale logic_o fixes land :: "o \ o \ o" (infixl "&&" 55) and lnot :: "o \ o" ("-- _" [60] 60) assumes "PROP logic_o((&&), lnot)" locale reflexive fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "reflexive((\))" locale mixin fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin((\))" locale mixin2 fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin2((\))" locale mixin3 fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin3((\))" locale mixin4_base fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin4_base((\))" locale mixin4_mixin fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin4_mixin((\))" locale mixin4_copy fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin4_copy((\))" locale A5 fixes A :: "o" and B :: "o" and C :: "o" and D :: "o" and E :: "o" assumes "A5(A, B, C, D, E)" notes "1.1.2.1.1.3.1.1.2.1.1.A5_axioms" = (\A5(C, A, B, D, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.1.eq" = \C \ A \ B \ D \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.1.A5_axioms" = (\A5(B, C, A, D, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.1.eq" = \B \ C \ A \ D \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.A5_axioms" = (\A5(C, B, A, E, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.eq" = \C \ B \ A \ E \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.1.1.A5_axioms" = (\A5(D, B, C, E, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.1.1.eq" = \D \ B \ C \ E \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.1.A5_axioms" = (\A5(D, B, A, C, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.1.eq" = \D \ B \ A \ C \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.1.A5_axioms" = (\A5(C, E, B, A, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.1.eq" = \C \ E \ B \ A \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.1.1.A5_axioms" = (\A5(D, E, C, A, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.1.1.eq" = \D \ E \ C \ A \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.1.A5_axioms" = (\A5(D, E, B, C, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.1.eq" = \D \ E \ B \ C \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.1.A5_axioms" = (\A5(B, D, E, C, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.1.eq" = \B \ D \ E \ C \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.1.1.A5_axioms" = (\A5(A, D, B, C, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.1.1.eq" = \A \ D \ B \ C \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.1.A5_axioms" = (\A5(A, D, E, B, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.1.eq" = \A \ D \ E \ B \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.1.1.A5_axioms" = (\A5(D, A, E, C, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.1.1.eq" = \D \ A \ E \ C \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.1.A5_axioms" = (\A5(D, A, B, E, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.1.eq" = \D \ A \ B \ E \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.A5_axioms" = (\A5(D, A, C, B, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.3.eq" = \D \ A \ C \ B \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.A5_axioms" = (\A5(C, D, A, B, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.1.eq" = \C \ D \ A \ B \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.A5_axioms" = (\A5(C, D, E, A, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.1.eq" = \C \ D \ E \ A \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.A5_axioms" = (\A5(C, D, B, E, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.2.eq" = \C \ D \ B \ E \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.1.1.A5_axioms" = (\A5(D, C, B, A, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.1.1.eq" = \D \ C \ B \ A \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.1.A5_axioms" = (\A5(D, C, E, B, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.1.eq" = \D \ C \ E \ B \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.A5_axioms" = (\A5(D, C, A, E, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.3.eq" = \D \ C \ A \ E \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.A5_axioms" = (\A5(A, D, C, E, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.2.eq" = \A \ D \ C \ E \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.A5_axioms" = (\A5(B, D, A, E, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.1.eq" = \B \ D \ A \ E \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.A5_axioms" = (\A5(B, D, C, A, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.2.eq" = \B \ D \ C \ A \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.A5_axioms" = (\A5(E, D, B, A, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.1.eq" = \E \ D \ B \ A \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.A5_axioms" = (\A5(E, D, C, B, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.1.eq" = \E \ D \ C \ B \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.A5_axioms" = (\A5(E, D, A, C, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.3.eq" = \E \ D \ A \ C \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.A5_axioms" = (\A5(A, E, D, C, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.1.eq" = \A \ E \ D \ C \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.A5_axioms" = (\A5(A, E, B, D, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.1.eq" = \A \ E \ B \ D \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.A5_axioms" = (\A5(A, E, C, B, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.2.eq" = \A \ E \ C \ B \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.A5_axioms" = (\A5(D, E, A, B, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.2.eq" = \D \ E \ A \ B \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.A5_axioms" = (\A5(C, E, D, B, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.1.eq" = \C \ E \ D \ B \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.A5_axioms" = (\A5(C, E, A, D, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.2.eq" = \C \ E \ A \ D \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.A5_axioms" = (\A5(B, E, C, D, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.1.eq" = \B \ E \ C \ D \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.A5_axioms" = (\A5(B, E, A, C, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.1.eq" = \B \ E \ A \ C \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.A5_axioms" = (\A5(B, E, D, A, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.3.eq" = \B \ E \ D \ A \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.A5_axioms" = (\A5(D, B, E, A, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.2.eq" = \D \ B \ E \ A \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.A5_axioms" = (\A5(C, B, D, A, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.1.eq" = \C \ B \ D \ A \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.A5_axioms" = (\A5(C, B, E, D, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.3.eq" = \C \ B \ E \ D \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.A5_axioms" = (\A5(E, C, B, D, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.1.eq" = \E \ C \ B \ D \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.A5_axioms" = (\A5(E, C, A, B, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.1.eq" = \E \ C \ A \ B \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.A5_axioms" = (\A5(E, C, D, A, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.2.eq" = \E \ C \ D \ A \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.A5_axioms" = (\A5(B, C, E, A, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.1.eq" = \B \ C \ E \ A \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.A5_axioms" = (\A5(B, C, D, E, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.2.eq" = \B \ C \ D \ E \ A [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.A5_axioms" = (\A5(A, C, B, E, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.1.eq" = \A \ C \ B \ E \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.A5_axioms" = (\A5(A, C, D, B, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.1.eq" = \A \ C \ D \ B \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.A5_axioms" = (\A5(A, C, E, D, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.3.eq" = \A \ C \ E \ D \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.1.A5_axioms" = (\A5(E, A, C, D, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.1.eq" = \E \ A \ C \ D \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.1.A5_axioms" = (\A5(E, A, B, C, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.1.eq" = \E \ A \ B \ C \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.2.A5_axioms" = (\A5(E, A, D, B, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.2.eq" = \E \ A \ D \ B \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.1.A5_axioms" = (\A5(C, A, E, B, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.1.eq" = \C \ A \ E \ B \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.2.A5_axioms" = (\A5(C, A, D, E, B) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.2.eq" = \C \ A \ D \ E \ B [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.1.A5_axioms" = (\A5(B, A, C, E, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.1.eq" = \B \ A \ C \ E \ D [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.1.A5_axioms" = (\A5(B, A, D, C, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.1.eq" = \B \ A \ D \ C \ E [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.3.A5_axioms" = (\A5(B, A, E, D, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.3.eq" = \B \ A \ E \ D \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.1.A5_axioms" = (\A5(E, B, A, D, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.1.eq" = \E \ B \ A \ D \ C [A5(A, B, C, D, E)]\ notes "1.1.2.1.A5_axioms" = (\A5(E, B, C, A, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.1.eq" = \E \ B \ C \ A \ D [A5(A, B, C, D, E)]\ notes "1.1.2.A5_axioms" = (\A5(E, B, D, C, A) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.2.eq" = \E \ B \ D \ C \ A [A5(A, B, C, D, E)]\ notes "1.1.A5_axioms" = (\A5(A, B, E, C, D) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.1.eq" = \A \ B \ E \ C \ D [A5(A, B, C, D, E)]\ notes "1.A5_axioms" = (\A5(A, B, D, E, C) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "1.eq" = \A \ B \ D \ E \ C [A5(A, B, C, D, E)]\ notes "A5_axioms" = (\A5(A, B, C, D, E) [A5(A, B, C, D, E)]\) ["attribute" ""] notes "eq" = \A \ B \ C \ D \ E [A5(A, B, C, D, E)]\ locale trivial fixes P :: "o" and Q :: "o" assumes "trivial(P, Q)" notes "x.trivial_axioms" = (\trivial(?x, Q) [trivial(P, Q)]\) ["attribute" ""] notes "x.Q" = \?x \ ?x \ Q [trivial(P, Q)]\ notes theorem "x.Q_triv" = \Q [trivial(P, Q)]\ notes "trivial_axioms" = (\trivial(P, Q) [trivial(P, Q)]\) ["attribute" ""] notes "Q" = \P \ P \ Q [trivial(P, Q)]\ notes theorem "Q_triv" = \Q [trivial(P, Q)]\ True \ True \ Q [trivial(P, Q)] locale trivial fixes P :: "o" and Q :: "o" assumes "trivial(P, Q)" notes "x.trivial_axioms" = (\trivial(?x, Q) [trivial(P, Q)]\) ["attribute" ""] notes "x.Q" = \?x \ ?x \ Q [trivial(P, Q)]\ notes theorem "x.Q_triv" = \Q [trivial(P, Q)]\ notes "trivial_axioms" = (\trivial(P, Q) [trivial(P, Q)]\) ["attribute" ""] notes "Q" = \P \ P \ Q [trivial(P, Q)]\ notes theorem "Q_triv" = \Q [trivial(P, Q)]\ locale mixin4_combined fixes le' :: "'a \ 'a \ o" and le :: "'b \ 'b \ o" assumes "mixin4_combined(le', le)" ?x + ?y + ?z = ?x + (?y + ?z) semi((+)) 0 + ?x = ?x ?x + 0 = ?x ?x + ?y + ?z = ?x + (?y + ?z) ?x \ ?y \ \ (\ ?x \ \ ?y) logic_o.lor_o((\), Not, ?x, ?y) \ ?x \ ?y True \ True ?x \ ?y \ ?x \ ?y locale mixin5_base fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin5_base((\))" locale mixin5_inherited fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin5_inherited((\))" reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y *** Failed to apply initial proof method (line 578 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 578 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y *** Failed to apply initial proof method (line 647 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 647 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") locale mixin6_base fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin6_base((\))" locale mixin6_inherited fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin6_inherited((\))" reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y *** Failed to apply initial proof method (line 672 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 672 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") locale mixin7_base fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin7_base((\))" locale mixin7_inherited fixes le :: "'a \ 'a \ o" (infix "\" 50) assumes "mixin7_inherited((\))" reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y reflexive.less(gle, ?x, ?y) \ gle(?x, ?y) \ ?x \ ?y *** Failed to apply initial proof method (line 705 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 705 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") locale mixin_thy_merge fixes le :: "'a \ 'a \ o" and le' :: "'b \ 'b \ o" assumes "mixin_thy_merge(le, le')" ### Introduced fixed type variable(s): 'a in "glob_inv" or "glob_one" or "prod" or "x" locale dgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) assumes "dgrp(( ** ))" locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" ### Ambiguous input (line 772 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") produces 3 parse trees: ### ("\<^const>IFOL.Trueprop" ### ("\<^const>IFOL.eq" ("\<^const>Locale_Test1.minus" ("_position" x)) ### ("_appl" ("_position" glob_inv) ### ("_args" ("\<^const>Locale_Test1.plus") ("_position" x))))) ### ("\<^const>IFOL.Trueprop" ### ("\<^const>Locale_Test1.minus" ### ("\<^const>IFOL.eq" ("_position" x) ### ("_appl" ("_position" glob_inv) ### ("_args" ("\<^const>Locale_Test1.plus") ("_position" x)))))) ### ("\<^const>IFOL.Trueprop" ### ("_appl" ### ("\<^const>Locale_Test1.minus" ### ("\<^const>IFOL.eq" ("_position" x) ("_position" glob_inv))) ### ("_args" ("\<^const>Locale_Test1.plus") ("_position" x)))) ### Fortunately, only one parse tree is well-formed and type-correct, ### but you may still want to disambiguate your grammar or your input. locale lgrp fixes prod :: "'a \ 'a \ 'a" (infixl "**" 65) and one :: "'a" and inv :: "'a \ 'a" assumes "lgrp(( ** ), one, inv)" notes "semi_axioms" = (\semi(( ** )) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "assoc" = \?x ** ?y ** ?z = ?x ** (?y ** ?z) [lgrp(( ** ), one, inv)]\ notes "right.rgrp_axioms" = (\rgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "right.rone" = \?x ** one = ?x [lgrp(( ** ), one, inv)]\ notes "right.rinv" = \?x ** inv(?x) = one [lgrp(( ** ), one, inv)]\ notes theorem "right.rcancel" = \?y ** ?x = ?z ** ?x \ ?y = ?z [lgrp(( ** ), one, inv)]\ notes "def.dgrp_axioms" = (\dgrp(( ** )) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes "def.one_def" = \one = glob_one(( ** )) [lgrp(( ** ), one, inv)]\ notes (\TERM _\) ["attribute" ""] notes theorem "def.lone" = \one ** ?x = ?x [lgrp(( ** ), one, inv)]\ notes (\TERM _\) ["attribute" ""] notes (\TERM _\) ["attribute" ""] notes "def.inv_def" = \inv(?x) = glob_inv(( ** ), ?x) [lgrp(( ** ), one, inv)]\ notes (\TERM _\) ["attribute" ""] notes theorem "def.linv" = \inv(?x) ** ?x = one [lgrp(( ** ), one, inv)]\ notes "lgrp_axioms" = (\lgrp(( ** ), one, inv) [lgrp(( ** ), one, inv)]\) ["attribute" ""] notes "lone" = \one ** ?x = ?x [lgrp(( ** ), one, inv)]\ notes "linv" = \inv(?x) ** ?x = one [lgrp(( ** ), one, inv)]\ notes theorem "lcancel" = \?x ** ?y = ?x ** ?z \ ?y = ?z [lgrp(( ** ), one, inv)]\ notes theorem "one_equation" = \dgrp.one(( ** )) = one [lgrp(( ** ), one, inv)]\ notes theorem "inv_equation" = \dgrp.inv(( ** ), ?x) = inv(?x) [lgrp(( ** ), one, inv)]\ locale roundup fixes x :: "o" assumes "roundup(x)" locale container locale container val it = []: thm list True \ True ### theory "FOL-ex.Locale_Test1" ### 2.714s elapsed time, 3.124s cpu time, 0.072s GC time Loading theory "FOL-ex.Locale_Test2" (required by "FOL-ex.Locale_Test") ### theory "FOL-ex.Locale_Test2" ### 0.005s elapsed time, 0.012s cpu time, 0.000s GC time Loading theory "FOL-ex.Locale_Test3" (required by "FOL-ex.Locale_Test") ### theory "FOL-ex.Locale_Test3" ### 0.005s elapsed time, 0.012s cpu time, 0.000s GC time Loading theory "FOL-ex.Locale_Test" ### Removed duplicate interpretation after retrieving its mixins. locale mixin_thy_merge fixes le :: "'a \ 'a \ o" and le' :: "'b \ 'b \ o" assumes "mixin_thy_merge(le, le')" ### theory "FOL-ex.Locale_Test" ### 0.011s elapsed time, 0.024s cpu time, 0.000s GC time zero + ?x = ?x [\x. zero + x = x, \x. - x + x = zero] dependencies: semi "(+)" right? : rgrp "(+)" "0" "minus" def? : dgrp "(+)" lgrp "(+)" "0" "minus" right? : rgrp "(+)" "zero" "minus" lgrp "(+)" "zero" "minus" 0 + ?x = ?x [\x zero. zero + x = x, \x zero. - x + x = zero] interpretations: loc : logic_o "pand" "pnot" y : logic_o "(\)" "Not" x : logic_o "(\)" "Not" isabelle document -d /media/data/jenkins/workspace/isabelle-repo-makeall/browser_info/FOL/FOL-ex/document -o pdf -n document isabelle document -d /media/data/jenkins/workspace/isabelle-repo-makeall/browser_info/FOL/FOL-ex/outline -o pdf -n outline -t /proof,/ML *** Failed to apply initial proof method (line 705 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 705 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") *** Failed to apply initial proof method (line 672 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 672 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") *** Failed to apply initial proof method (line 647 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 647 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy") *** Failed to apply initial proof method (line 578 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy"): *** goal (1 subgoal): *** 1. gless(x, y) \ gle(x, y) \ x \ y *** At command "by" (line 578 of "~~/src/FOL/ex/Locale_Test/Locale_Test1.thy")