Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Isabelle/Archive-of-Formal-Proofs/thys/AOT/     Datei vom 29.4.2026 mit Größe 49 kB image not shown  

Quelle  AOT_misc.thy

  Sprache: Isabelle
 

theory AOT_misc
  imports AOT_NaturalNumbers
begin

sectionMiscellaneous Theorems

AOT_theorem PossiblyNumbersEmptyPropertyImpliesZero:
  Numbers(x,[λz O!z & z E z]) x = 0
proof(rule "I")
  AOT_have Rigid([λz O!z & z E z])
  proof (safe intro!: "df-rigid-rel:1"[THEN "dfI""&I" "cqt:2";
         rule RN; safe intro!: GEN "I")
    AOT_modally_strict {
      fix x
      AOT_assume [λz O!z & z E z]x
      AOT_hence O!x & x E x by (rule C")
      moreover AOT_have x =E x using calculation[THEN "&E"(1)] 
        by (metis "ord=Eequiv:1" "vdash-properties:10")
      ultimately AOT_have x =E x & ¬x =E x
        by (metis "con-dis-i-e:1" "con-dis-i-e:2:b" "intro-elim:3:a" "thm-neg=E")
      AOT_thus [λz O!z & z E z]x using "raa-cor:1" by blast
    }
  qed
  AOT_hence x (Numbers(x,[λz O!z & z E z]) Numbers(x,[λz O!z & z E z]))
    by (safe intro!: "num-cont:2"[unvarify G, THEN "E""cqt:2")
  AOT_hence x (Numbers(x,[λz O!z & z E z]) Numbers(x,[λz O!z & z E z]))
    using "BFs:2"[THEN "E"by blast
  AOT_hence (Numbers(x,[λz O!z & z E z]) Numbers(x,[λz O!z & z E z]))
    using "E"(2by auto
  moreover AOT_assume Numbers(x,[λz O!z & z E z])
  ultimately AOT_have \ANumbers(x,[λz O!z & z E z])
    using "sc-eq-box-box:1"[THEN "E"(1), THEN "E"THEN "nec-imp-act"[THEN "E"]]
    by blast
  AOT_hence Numbers(x,[λz \A[λz O!z & z E z]z])
    by (safe intro!: "eq-num:1"[unvarify G, THEN "E"(1)] "cqt:2")
  AOT_hence x = #[λz O!z & z E z]
    by (safe intro!: "eq-num:2"[unvarify G, THEN "E"(1)] "cqt:2")
  AOT_thus x = 0
    using "cqt:2"(1"rule-id-df:2:b[zero]" "rule=E" "zero:1" by blast
qed

AOT_define Numbers' :: τ ==> τ ==> φ (Numbers'''(_,_'))
  Numbers'(x, G) df A!x & G & F (x[F] F E G)
AOT_theorem Numbers'equiv: Numbers'(x,G) A!x & F (x[F] F E G)
  by (AOT_subst_def Numbers')
     (auto intro!: "I" "I" "&I" "cqt:2" dest: "&E")

AOT_theorem Numbers'DistinctZeroes:
  xy (Numbers'(x,[λz O!z & z E z]) & Numbers'(y,[λz O!z & z E z]) & x y)
proof -
  AOT_obtain w1 where w w1 w
    using "two-worlds-exist:4" "PossibleWorld.E"[rotated] by fast
  then AOT_obtain w2 where distinct_worlds: w1 w2
    using "PossibleWorld.E"[rotated] by blast
  AOT_obtain x where x_prop:
    A!x & F (x[F] w1 F E [λz O!z & z E z])
    using "A-objects"[axiom_inst] "E"[rotated] by fast
  moreover AOT_obtain y where y_prop:
    A!y & F (y[F] w2 F E [λz O!z & z E z])
    using "A-objects"[axiom_inst] "E"[rotated] by fast
  moreover {
    fix x w
    AOT_assume x_prop: A!x & F (x[F] w F E [λz O!z & z pan style='font-size: 18px;'>≠E z])
    AOT_have F w (x[F] F E [λz O!z & z E z])
    proof(safe intro!: GEN "conj-dist-w:4"[unvarify p q, OF "log-prop-prop:2",
                              OF "log-prop-prop:2",THEN "E"(2)] "I" "I")
      fix F
      AOT_assume w x[F]
      AOT_hence x[F]
        using "fund:1"[unvarify p, OF "log-prop-prop:2"THEN "E"(2),
                       OF "PossibleWorld.I"by blast
      AOT_hence x[F]
        by (metis "en-eq:3[1]" "intro-elim:3:a")
      AOT_thus w (F E [λz O!z & z E z])
        using x_prop[THEN "&E"(2), THEN "E"(2), THEN "E"(1)] by blast
    next
      fix F
      AOT_assume w (F E [λz O!z & z E z])
      AOT_hence x[F]
        using x_prop[THEN "&E"(2), THEN "E"(2), THEN "E"(2)] by blast
      AOT_hence x[F]
        using "pre-en-eq:1[1]"[THEN "E"by blast
      AOT_thus w x[F]
        using "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)]
              "PossibleWorld.E" by fast
    qed
    AOT_hence w F (x[F] F E [λz O!z & z E z])
      using "conj-dist-w:5"[THEN "E"(2)] by fast
    moreover {
      AOT_have [λz O!z & z E z]
        by (safe intro!: RN "cqt:2")
      AOT_hence w [λz O!z & z E z]
        using "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1),
                       THEN "PossibleWorld.E"by blast
    }
    moreover {
      AOT_have A!x
        using x_prop[THEN "&E"(1)] by (metis "oa-facts:2" "E")
      AOT_hence w A!x
        using "fund:2"[unvarify p, OF "log-prop-prop:2",
                       THEN "E"(1), THEN "PossibleWorld.E"by blast
    }
    ultimately AOT_have w (A!x & [λz O!z & z E z] &
 F (x[F] F E [λz O!z & z E z]))

      using "conj-dist-w:1"[unvarify p q, OF "log-prop-prop:2",
              OF "log-prop-prop:2"THEN "E"(2), OF "&I"by auto
    AOT_hence w w (A!x & [λz O!z & z E z] &
 F (x[F] F E [λz O!z & z E z]))

      using "PossibleWorld.I" by auto
    AOT_hence (A!x & [λz O!z & z E z] & F (x[F] F E [λz O!z & z E z]))
      using "fund:1"[unvarify p, OF "log-prop-prop:2"THEN "E"(2)] by blast
    AOT_hence Numbers'(x,[λz O!z & z E z])
      by (AOT_subst_def Numbers')
  }
  ultimately AOT_have Numbers'(x,[λz O!z & z E z])
                  and Numbers'(y,[λz O!z & z E z])
    by auto
  moreover AOT_have x y
  proof (rule "ab-obey:2"[THEN "E"])
    AOT_have ¬u [λz O!z & z E z]u
    proof (safe intro!: RN "raa-cor:2")
      AOT_modally_strict {
        AOT_assume u [λz O!z & z E z]u
        then AOT_obtain u where [λz O!z & z E z]u
          using "Ordinary.E"[rotated] by blast
        AOT_hence O!u & u E u
          by (rule C")
        AOT_hence ¬(u =E u)
          by (metis "con-dis-taut:2" "intro-elim:3:d" "modus-tollens:1"
                    "raa-cor:3" "thm-neg=E")
        AOT_hence u =E u & ¬u =E u
          by (metis "modus-tollens:1" "ord=Eequiv:1" "raa-cor:3" Ordinary.ψ)
        AOT_thus p & ¬p for p
          by (metis "raa-cor:1")
      }
    qed
    AOT_hence nec_not_ex: w w ¬u [λz O!z & z E z]u
      using "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)] by blast
    AOT_have ([λy p]x p) for x p
      by (safe intro!: RN "beta-C-meta"[THEN "E""cqt:2")
    AOT_hence w w ([λy p]x p) for x p
      using "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)] by blast
    AOT_hence world_prop_beta: w (w [λy p]x w p) for x p
      using "conj-dist-w:4"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)]
            "PossibleWorld.E" "PossibleWorld.I" by meson

    AOT_have p (w1 p & ¬w2 p)
    proof(rule "raa-cor:1")
      AOT_assume 0¬p (w1 p & ¬w2 p)
      AOT_have 1w1 p w2 p for p
      proof(safe intro!: GEN "I")
        AOT_assume w1 p
        AOT_thus w2 p
          using 0 "con-dis-i-e:1" "I"(2"raa-cor:4" by fast
      qed
      moreover AOT_have w2 p w1 p for p
      proof(safe intro!: GEN "I")
        AOT_assume w2 p
        AOT_hence ¬w2 ¬p
          using "coherent:2" "intro-elim:3:a" by blast
        AOT_hence ¬w1 ¬p
          using 1["I" p, THEN "E"(1), OF "log-prop-prop:2"]
          by (metis "modus-tollens:1")
        AOT_thus w1 p
          using "coherent:1" "intro-elim:3:b" "reductio-aa:1" by blast
      qed
      ultimately AOT_have w1 p w2 p for p
        by (metis "intro-elim:2")
      AOT_hence w1 = w2
        using "sit-identity"[unconstrain s, THEN "E",
            OF PossibleWorld.ψ[THEN "world:1"[THEN "dfE"], THEN "&E"(1)],
            unconstrain s', THEN "E",
            OF PossibleWorld.ψ[THEN "world:1"[THEN "dfE"], THEN "&E"(1)],
            THEN "E"(2)] GEN by fast
      AOT_thus w1 = w2 & ¬w1 = w2
        using  "=-infix" "dfE" "con-dis-i-e:1" distinct_worlds by blast
    qed
    then AOT_obtain p where 0w1 p & ¬w2 p
      using "E"[rotated] by blast
    AOT_have y[λy p]
    proof (safe intro!: y_prop[THEN "&E"(2), THEN "E"(1), THEN "E"(2)] "cqt:2")
      AOT_show w2 [λy p] E [λz O!z & z E z]
      proof (safe intro!:  "cqt:2" "empty-approx:1"[unvarify F H, THEN RN,
                  THEN "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)],
                  THEN "PossibleWorld.E",
                  THEN "conj-dist-w:2"[unvarify p q, OF "log-prop-prop:2",
                                       OF "log-prop-prop:2"THEN "E"(1)],
                                       THEN "E"]
                  "conj-dist-w:1"[unvarify p q, OF "log-prop-prop:2",
                                  OF "log-prop-prop:2"THEN "E"(2)] "&I")
        AOT_have ¬w2 u [λy p]u
        proof (rule "raa-cor:2")
          AOT_assume w2 u [λy p]u
          AOT_hence x w2 (O!x & [λy p]x)
            by (metis "conj-dist-w:6" "intro-elim:3:a")
          then AOT_obtain x where w2 (O!x & [λy p]x)
            using "E"[rotated] by blast
          AOT_hence w2 [λy p]x
            using "conj-dist-w:1"[unvarify p q, OF "log-prop-prop:2",
                    OF "log-prop-prop:2"THEN "E"(1), THEN "&E"(2)] by blast
          AOT_hence w2 p
            using world_prop_beta[THEN "PossibleWorld.E"THEN "E"(1)] by blast
          AOT_thus w2 p & ¬w2 p
            using 0[THEN "&E"(2)] "&I" by blast
        qed
        AOT_thus w2 ¬u [λy p]u
          by (safe intro!: "coherent:1"[unvarify p, OF "log-prop-prop:2",
                                        THEN "E"(2)])
      next
        AOT_show w2 ¬v [λz O!z & z E z]v
          using nec_not_ex[THEN "PossibleWorld.E"by blast
      qed
    qed
    moreover AOT_have ¬x[λy p]
    proof(rule "raa-cor:2")
      AOT_assume x[λy p]
      AOT_hence "w1 [λy p] E [λz O!z & z E z]"
        using x_prop[THEN "&E"(2), THEN "E"(1), THEN "E"(1)]
              "prop-prop2:2" by blast
      AOT_hence "¬w1 ¬[λy p] E [λz O!z & z E z]"
        using "coherent:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)] by blast
      moreover AOT_have "w1 ¬([λy p] E [λz O!z & z E z])"
      proof (safe intro!: "cqt:2" "empty-approx:2"[unvarify F H, THEN RN,
                    THEN "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)],
                    THEN "PossibleWorld.E",
                    THEN "conj-dist-w:2"[unvarify p q, OF "log-prop-prop:2",
                        OF "log-prop-prop:2"THEN "E"(1)], THEN "E"]
                    "conj-dist-w:1"[unvarify p q, OF "log-prop-prop:2",
                                    OF "log-prop-prop:2"THEN "E"(2)] "&I")
        fix u
        AOT_have w1 O!u
          using Ordinary.ψ[THEN RN,
                  THEN "fund:2"[unvarify p, OF "log-prop-prop:2"THEN "E"(1)],
                  THEN "PossibleWorld.E"by simp
        moreover AOT_have w1 [λy p]u
          by (safe intro!: world_prop_beta[THEN "PossibleWorld.E"THEN "E"(2)]
                           0[THEN "&E"(1)])
        ultimately AOT_have w1 (O!u & [λy p]u)
          using "conj-dist-w:1"[unvarify p q, OF "log-prop-prop:2",
                                OF "log-prop-prop:2"THEN "E"(2),
                                OF "&I"by blast
        AOT_hence x w1 (O!x & [λy p]x)
          by (rule "I")
        AOT_thus w1 u [λy p]u
          by (metis "conj-dist-w:6" "intro-elim:3:b")
      next
        AOT_show w1 ¬v [λz O!z & z E z]v
          using "PossibleWorld.E" nec_not_ex by fastforce
      qed
      ultimately AOT_show p & ¬hence skl: by (metis Suc_lessI nsuck)
 using "raa-cor:3" by blast
 qed
 ultimately AOT_have y[λy p] & ¬x[λy p]π l pd π(uk\close> sgicdtmdtyao
 using "&I" by blast
 AOT_hence F (y[F] & ¬x[F])
 by (metis "existential:1" "prop-prop2:2")
 AOT_thus F (x[F] & ¬y[F]) F (y[F] & ¬x[F])
 by (rule "
 qed
 ultimately AOT_have Numbers'(x,[λz O!z & z E z]) &
 Numbers'(y,[λ \close
 using "&I" by blast
 AOT_thus xy (Numbers'(x,[λz O!z & z E z]) &
 Numbers'(y,[λz O!z & z E z]) & x y)

 using "I"(2)[where β=x] "I"(2)[where β=y] by auto
 

  restricted_identity:
 x =\R y (InDomainOf(x,R) & InDomainOf(y,R) & x = y)
 by (auto intro!: "I" "I" "&I"
 dest: "id-R-thm:2"[THEN "E"] "&E"
 "id-R-thm:3"[THEN "E"]
 "id-R-thm:4"[THEN "E", OF "I"(1), THEN "E"(2)])

  induction': F ([F]0 & n([F]n [F]n') n [F]n)
 (rule GEN; rule "I")
 fix F n
 AOT_assume A:
 AOT_have nm([]nm ([F]n [F]m))
 proof(safe intro!: "Number.GEN" "
 fix n m
 AOT_assume []nm¬ (π ipd (π proof
 moreover AOT_have []n n'π l pd k)

 using "suc-thm".
 ultimately AOT_have m_eq_suc_n: π<>(k < l ipd_is_ipd ipdk_pdl path(1) pt_oe p_tsym ter_thta lsimp_)
 using "pred-func:1"[unvarify z, OF "def-suc[den2]", THEN "E", OF "&I"]
 by blast
 AOT_assume [F]n
 AOT_hence
 using A[THEN "&E"(2), THEN "Number.E", THEN "E"] by blast
 AOT_thus [F]m
 using m_eq_suc_n[symmetric] "rule=E" by fast
 qed
 AOT_thus n[F]n
 using induction[THEN "E"(2), THEN "
 by simp
 

  ExtensionOf :: τ ==> Π ==> φFalse
using lcd cd_not_pd by auto
  qed

  OrdinaryExtensionOf :: τ ==> Π
 OrdinaryExtensionOf(x,[G]) df A!x & G & F(x[F] hae \open>k' < m using

  BeingOrdinaryExtensionOfDenotes:
 
 (rule "safe-ext"[axiom_inst, THEN "E", OF "&I"])
 AOT_show [λx A!x & G & [λx \< obtainis_path π and π'': \>'' 0 = ipd (π and π<>pi i'' i \<noteq  using no_pd_path[OF * **] .
 by "cqt:2"
 
 AOT_show x (A!x & G & [λx F (x[F] \   = m' Suc k'
 OrdinaryExtensionOf(x,[G]))

 proof(safe intro!: RN GEN)
 have 1ah'pth)pa_ons pah_ahhf)
 fix x
 AOT_modally_strict {
 AOT_have [λx F (x[F] z (O!z ([F]z [G]z)))]
 proof (safe intro!: "Comprehension_3"[THEN "E"] RN GEN
 "I" "I" Ordinary.GEN)
 AOT_modally_strict {
 fix F H u
 AOT_assume H E F
 AOT_hence u([H]u [F]u)
 using eqE[THEN "dfE", THEN "&E"(2)] "qml:2"[axiom_inst, THEN "E"]
 by blast
 AOT_hence 0: [H]u [F]u?π' (m' - Suc k' + n'') = return
ug<>m
 {
 AOT_assume u([F]u [G]u)
 AOT_hence 1: [F]u [G]u
 AOT_show [G]u if [H]u using 0 1 "E"(1) that by blast
 w if E"(2) that by blast
 }
 {
 AOT_assume u([H]u [G]u)
  1: using "Ordinary.E" by fast
 AOT_show [G]u if [F]u using 0 1 "E"(1,2) that by blast
 AOT_show [G]u<E"(1,2) that by blast
 }
 }
 qed
 }
 AOT_thus (A!x & G & [λx F (x[F] z (O!z ([F]z [G]z)))]x)
 OrdinaryExtensionOf(x,[G])

 apply (AOT_subst_def OrdinaryExtensionOf)
 apply (AOT_subst [λx have lm':
 F (x[F] z (O!z ([F]z [G]z)))
 by (auto intro!: "beta-C-meta"[THEN "E"] simp: "oth-class-taut:3:a")
 }
 qed
 

 Fragments of PLM's theory of Concepts.have 1:

  FimpG :: Π ==> Π ==> φ (infixl k' < ?l'
 "F-imp-G": [G] ==> [F] have 3: apply (rule ccontr) using lm' by (simp, metis "**" 1 ipd(1) ipdk_pdl)

  concept :: Π (
 concepts: C! =df A!

 
 Concept: C!κ
 
 AOT_modally_strict {
 AOT_have
 using "o-objects-exist:2" "qml:2"[axiom_inst] "E" by blast
 AOT_thus x C!x?P
λ l'. π l ' l' < m
 using "rule-id-df:1[zero]"[OF concepts, OF "oa-exist:2"] "rule=E" id_sym
 by fast
 }
 
 AOT_modally_strict {
 AOT_show C!κ κ for κ
 using "cqt:5:a"[axiom_inst, THEN "E", THEN "&E"(2)] "I"
 by blast
 }
 
 AOT_modally_strict {
 AOT_have
 by (simp add: "oa-facts:2" GEN)
 AOT_thus x(C!x C!x)o' == LEAST l'. ?P l'

 using "rule-id-df:1[zero]"[OF concepts, OF "oa-exist:2"] "rule=E" id_sym
 by fast
 }
 

 
 Concept: c d e

  "concept-comp:1": x(C!x & F(x[F] φ{F}))
 using oncet[TE ul-id-:[zo" F"oa-eist2smerc]
 "A-objects"[axiom_inst]
 "rule=E" by fast

  "concept-comp:2": !x(C!x & F(x[F] φ{F}))l' < m using l' 1 2 3 LeastI[of ] by blast
 using concepts[THEN "rule-id-df:1[zero]", OF "oa-exist:2", symmetric]
 "A-objects!"
 "rule=E" by fast

  "concept-comp:3":
 using "concept-comp:2" "A-Exists:2"[THEN "E"(2)] "RA[2]" by blast

  "concept-comp:4":
 xx & \>xFιx(A!x & φ{F}))\close
 using "=I"(1)[OF "concept-comp:3"]
 "rule=E"[rotated]
 concepts[THEN "rule-id-df:1[zero]", OF "oa-exist:2"]
 by fast

  conceptInclusion :: τ ==> τ ==> φ (infixl 100)
 "con:1": c d df F(c[F] d[F])


  conceptOf :: τ ==> τ ==> φ (ConceptOf'(_,_'))
 "concept-of-G": ConceptOf(c,G) df

  ConceptOfOrdinaryProperty: ([H] ==> O!) [λx ConceptOf(x,H)]
 rightarrowI")
 AOT_assume [H] ==> O!
 AOT_hence
 using "F-imp-G"[THEN "dfE"] "&E" by blast
 AOT_hence cd by (metis is_cdi_def kl' nipd' nretl' path(2))
 using "S5Basic:6"[THEN "E"(1)] by blast
 moreover AOT_have
 FG((G E F) lc<>l proof -
 proof(rule RM; safe intro!: "I" GEN "I")
 AOT_modally_strict {
 fix F G
 AOT_assume 0: x([H]x O!x)
 AOT_assume E F
 AOT_hence 1: u([G]u [F]u)
 by (AOT_subst_thm eqE[THEN "Df", THEN "¬ ( m <.<}¬πe> m)

 OF "cqt:2[const_var]"[axiom_inst],
 OF "cqt:2[const_var]"[axiom_inst], symmetric])
 {
 AOT_assume [H] ==> [F]
 AOT_hence k' < j'j' < l and lcdj': j'
 using "F-imp-G"[THEN "dfE"] "&E" by blast
 moreover AOT_modally_strict {
 AOT_assume x([H]x O!x)j'<m'
by (metis jl' lm' order.strict_trans)
 moreover AOT_assume u([G]u [F]u)
 moreover AOT_assume x([H]x <open\>' j' l?P

 ultimately AOT_have [H]x [G]x for x
 by (auto intro!: "I" dest!: "E"(2) dest: "E" "E") ence ' j'
 AOT_hence x([H]x [G]x)
 by (rule GEN)
 }
 ultimately AOT_have x([H]x [G]x)
 using "RN[prem]"[where
 Γ="{«x([H]x
 using 0 1 by fast
 AOT_thus [H] ==> [G]
 by (AOT_subst_def "F-imp-G")
 (safe intro!: "cqt:2" "&I")
 }
 {
 AOT_assume [H] ==> [G]
 AOT_hence ?π''(π'@'1) «k'cl>
 using "F-imp-G"[THEN "dfE"] "&E" by blast
 moreover AOT_modally_strict {
 AOT_assume
 moreover AOT_assume u([G]u [F]u)
 moreover AOT_assume x([H]x [G]x)
 ultimately AOT_have [His_path ?π'' by (metis π01 path_cons path_path_shift)
 by (auto intro!: "I" dest!: "E"(2) dest: "E" "E")
 AOT_hence x([H]x [F]x)
 by (rule GEN)
 }
 ultimately AOT_have x([H]x [F]x)
 using "RN[prem]"[where
 Γ="{«x([H]x ?π'' 0 = π (Suc k)
by (simp, metis kj' less_eq_Suc_le suc)
 using 0 1 by fast
 AOT_thus [H] ==> [F]
 by (AOT_subst_def "F-imp-G")
 (safe intro!: "cqt:2" "&I")
 }
 }
 qed
 ultimately AOT_have FG((G E F) ([H] ==> [F] [H] ==> [G]))
 using "E" by blast
 AOT_hence 0: [λx F(x[F] ([H] ==> [F]))]
 using Comprehension_3[THEN "E"] by blast
java.lang.NullPointerException
 proof (rule "safe-ext"[axiom_inst, THEN "E", OF "&I"])
 AOT_show [λx C!x & [λx F(x[F] ([H] ==> [F]))]x] by "cqt:2"
 next
 AOT_show x (C!x & [λx F (x[F] [H] ==> [F])]x ConceptOf(x,H))
 proof (rule "RN[prem]"[where Γ{«[λx F(x[F] ))]<><, simplified])
 AOT_modally_strict {
 AOT_assume 0: [λx F (x[F] [H] ==> [F])]
 AOT_show False proof (cases)
 proof(safe intro!: GEN "I" "I" "&I")
 fix x
 AOT_assume C!x & [λx F (x[F] [H] ==> [F])]x
 AOT_thus ConceptOf(x,H)
 by (AOT_subst_def "concept-of-G")
 (auto intro!: "&I" "cqt:2" dest: "&E" "βC")
 next
 fix x
 AOT_assume ConceptOf(x,H)
 AOT_hence C!x & (H & F(x[F] [H] ==> [F]))
 by (AOT_subst_def (reverse) "concept-of-G")
 AOT_thus C!x and [λx F(x[F] l'' + Suc k' < ldfles deedanl_commoid_diff_lss.le_if_cov2)
 by (auto intro!: "βC" 0 "cqt:2" dest: "&E")
 qed
 }
 next
 AOT_show
 using "exist-nec"[THEN "E"] 0 by blast
 qed
 qed
 

  "con-exists:1":
  -
 AOT_obtain c where F (c[F] [G] ==> [F])
 using "concept-comp:1" "Concept.
 AOT_hence ConceptOf(c,G)
 by (auto intro!: "concept-of-G"[THEN "dfI"] "&I" "cqt:2" Concept.ψ)
 thus ?thesis by (rule "Concept.I)
 

  "con-exists:2": !c ConceptOf(c,G)
  -
 AOT_have !c F (c[F] [G] ==> [F])
 using "concept-comp:2" by simp
 moreover {
 AOT_modally_strict {
 fix x
 AOT_assume F (x[F] [G] ==> [F])
 moreover AOT_have [G] ==> [G]
 by (safe intro!: "F-imp-G"[THEN "dfI"] "&I" "cqt:2" RN GEN "I")
 ultimately AOT_have
 using "E"(2) "E" by blast
 AOT_hence A!x
 using "encoders-are-abstract"[THEN "E", OF "I"(2)] by simp
 AOT_hence C!x
 using concepts[THEN "ruTHEN ruleid-f1[e]", OF "-xist2 ymetrc
 "rule=E"[rotated]
 by fast
 }
 }
 ultimately show ?thesis
 by (AOT_subst F (c[F] G Rig> F])
 AOT_subst_def "concept-of-G")
 (auto intro!: "I" "I" "&I" "cqt:2" Concept.ψ dest: "&E")
 

  "con-exists:3": \ιc ConceptOf(c,G)
 by (safe intro!: "A-Exists:2"[THEN "


  theConceptOfG :: τ ==> κs (
 "concept-G": cG =df show

  "concept-G[den]": cG
 by (auto intro!: "rule-id-df:1"[OF "concept-G"]
 "t=t-proper:1"[THEN "E"]
 "con-exists:3")


 t:<>C
  -
 AOT_have \A(C!cG & ConceptOf(cG, G))
 by (auto intro!: "actual-desc:2"[unvarify x, THEN "E"]
 "rule-id-df:1"[OF "concept-G"]
 "concept-G[den]"
 "con-exists:3")
 AOT_hence \AC!c\<^  qed
 by (metis "Act-Basic:2" "con-dis-i-e:2:a" "intro-elim:3:a")
 AOT_hence \AA!cG
 using "rule-id-df:[zero]"[OFcocets,OF "axst:2]
 "rule=E" by fast
 AOT_hence A!cG
 using "oa-facts:8"[unvarify x, THEN "csπ'π
by (metis π
 thus ?thesis
 using "rule-id-df:1[zero]"[OF concepts, OF "oa-exist:2", symmetric]
 "rule=E" by fast
 

  "conG-strict": cG = \ιc F(c[F] [G] ==> [F])
  (rule "id-eq:3"[unvarify α β γ, THEN "E"])
 AOT_have x (C!x & ConceptOf(x,G) C!x & F (x[F]
 by (auto intro!: "concept-of-G"[THEN "dfI"] RN GEN "I" "I" "&I" "cqt:2"
 deste_icd:: assumes path: \openis_path \pi🚫l < n
csπ n'

 auto dest: "E"(2) "E"(1,2) dest!: "&E"(2) "concept-of-G"[THEN "dfE"])
 AOT_thus csππ k' icd \openl icdπ k
π (Suc k) = π' (Suc k')

 by (auto intro!: "&I" "rule-id-df:1"[OF "concept-G"] "con-exists:3"
 "equiv-desc-eq:3"[THEN "E"])
 (auto simp: "concept-G[den]" "con-exists:3" "concept-comp:3")


  "conG-lemma:1": F(cG[F] [G] ==> [F])
 (safe intro!: GEN "I" "I")
 fix F
 AOT_have \AF(c t using icd unfolding is_icdi_def is_cdi_def using term_path_stable less_imp_le by metis
 using "actual-desc:4"[THEN "E", OF "concept-comp:3",
 THEN "Act-Basic:2"[THEN "E"(1)],
 THEN "&E"(2)]
 "conG-strict"[symmet] rul= byfast
 AOT_hence \A(cG[F] [G] ==> [F])
 using "logic-actual-nec:3"[axiom_inst, THEN "E"(2)
 by blast
 AOT_hence 0: \AcG[F] \A[G] ==> [F]frpati_w[Fpa)en
 using "Act-Basic:5"[THEN "E"(1)] by blast
 {
 AOT_assume is_path ρ and πρ n\rhok < m and ipd: {k..<m}. ρ ipd (ρ k)
 AOT_hence \AcG[F]
 by(safe intro!: "en-eq:10[1]"[unvarify x1, THEN "
 "concept-G[den]")
 AOT_hence \A[G] ==> [F]
  0[THN"equivE"(1)] by blast
 AOT_hence \A(F & G & x([G]x cl
 by (AOT_subst_def (reverse) "F-imp-G")
 AOT_hence \Ax([G]x [F]x)
 using "Act-Basic:2"[THEN "E"(1)] "&E" by blast
 AOT_hence x([G]x [F]x)
 using "qml-act:2"[axiom_inst, THEN "E"(2)] by simp
 AOT_thus [G] ==> [F]
 by (AOT_subst_def "F-imp-G"; auto intro!: "&I" "cqt:2")
 }
 {
 AOT_assume [G] ==> [F]
 AOT_hence x([G]x [F]x)
java.lang.NullPointerException
 AOT_hence \Ax([G]x [F]x)
 using "qml-act:2:2"[axiiom_i HEN "\<>E
 AOT_hence \A(F & G & x([G]x [F]x))
 by (auto intro!: "Act-Basic:2"[THEN "E"(2)] "&I" "cqt:2"
 intro: "RA[2]")
 AOT_hence \A([G] ==> [F]) \rho>'mw at\rho>':<>s_path ρ'
and πρ': n''k' < m'
ρ' m' = ipd (ρ' k')
l {k'..<m'}. \rho' l .
 by (AOT_subst_def "F-imp-G")
 AOT_hence csρ'π k'ρ
 using 0[THEN "E"(2)] by blast
 AOT_thus cG[F]
 by(safe intro!: "en-eq:10[1]"[unvarify xb>E"(1)]
 "concept-G[den]")
 }
 

  conH_enc_ord:
 ([H] ==> O!) F G (G E F (cH[F] \<^  have using icdi_path_swap_le[OF pathρ>ρvegbi
 (rule "I")
 AOT_assume 0: [H] ==> O!
 AOT_have 0: ([H] ==> O!)
 apply (AOT_subst_def "F-imp-G")
 using 0[THEN "dfE"[OF "F-imp-G"]]
 by (auto intro!: "KBasic:3"[THEN "l < m

 dest: "&E" 4[THEN "E"])
java.lang.NullPointerException
 proof(rule RM; safe intro!: "I" GEN)
 AOT_modally_strict {
 fix F G
 AOT_assume csρ' using csk1 csk1' csk by auto
 AOT_hence 0: x ([H]x O!x)
java.lang.NullPointerException
 AOT_assume 1: G E F
 AOT_assume ρ' k' = ρ k uin lstcsbymts
 AOT_hence [H] ==> [F]
 using "conG-lemma:1"[THEN "E"(2), THEN "E"(1)] by simp
 AOT_hence 2: x ([H]x [F]x)
 by (safe dest!: "F-imp-G"[THEN "dfE"] "&E"(2))
 AOT_modally_strict {
 AOT_assume 0:
 AOT_assume 1: x ([H]x [F]x)
 AOT_assume 2: G E F
 AOT_have x ([H]x [G]x)
 proof(safe intro!: GEN "I")
 fix x
 AOT_assume
 AOT_hence O!x and [F]x
 using 0 1 "E"(2) "E" by blast+
 AOT_thus [G]x
 using 2[THEN eqE[THEN "
 "E"(2) "E" "E"(2) calculation by blast
 qed
 }
 AOT_hence x ([H]x
 using "RN[prem]"[where Γ={«x ([H]x O!x)¬,
 «x ([H]x [F]x)¬,
 «}

 AOT_hence [H] ==> [G]
 by (safe intro!: "F-imp-G"[THEN "dfI"] "&I" "cqt:2")
 AOT_hence cH[G]
 using "conG-lemma:1"[THEN "E"(2), THEN "E"(2)] by simp
 } note 0 = this
 AOT_modally_strict {
 fix F G
 AOT_assume [H] ==> O!
 moreover AOT_assume
 moreover AOT_have F E G
 by (AOT_subst csπ l = csρ l using πρ converge(1) cs_path_swap_le less_imp_le_nat path(1) pathρ by blast
 (auto intro!: calculation(2)
 eqE[THEN "dfI"]
 "I" "I" "&I" "cqt:2" Ordinary.GEN
 dest!: eqE[THEN "dfE"] "&E"(2)
 dest: "E"(1,2) "Ordinary.E")
java.lang.NullPointerException
 using 0 "I" "I" by auto
 }
 qed
 ultimately AOT_show F G (G E F (cH[F] cH[G]))
 using "
 

  concept_inclusion_denotes_1:
 ([H] ==> O!) [λx cH x]
 (rule "I")
 AOT_assume 0: [H] ==> O!
 AOT_show [λx \< have' using cs_order[OF pat\rhopathρ' csl csn' nretl converge(1)] .
 proof(rule "safe-ext"[axiom_inst, THEN "E", OF "&I"])
 AOT_show [λx C!x & F(cH[F] x[F])]
 by (safe intro!: conjunction_denotes[THEN "E", OF "&I"]
 Comprehension_2'[THEN "E"]
 conH_enc_ord[THEN "E", OF 0]) "cqt:2"
 next
 AOT_show have cslρcsπ'l'<>'
 by (safe intro!: RN GEN; AOT_subst_def "con:1")
 (auto intro!: "I" "I" "&I" "concept-G[concept]" dest: "&E")
 qed
 

  concept_inclusion_denotes_2:
 ([H] ==> O!) [λx x cH]
 (rule "I")
 AOT_assume 0: [H] ==> O!
 AOT_show [λx x cH]
 proof(rule "safe-ext"[axiom_inst, THEN "E", OF "&I"])
 AOT_show F(x[F] cH[F])]
 by (safe intro!: conjunction_denotes[THEN "E", OF "&I"]
 Comprehension_1'[THEN "E"]
 conH_enc_ord[THEN "E", OF 0]) "cqt:2"
 next
 AOT_show ?thesis by blast
 by (safe intro!: RN GEN; AOT_subst_def "con:1")
 (auto intro!: "I" "I" "&I" "concept-G[concept]" dest: "&E")
 qed
 

  ThickForm :: τ ==> τ ==> φ (FormOf'(_,_'))
 "tform-of": FormOf(x,G) df A!x & G & F(x[F] [G] ==> [F])

  FormOfOrdinaryProperty: ([H] ==> O!) [λx FormOf(x,H)]
 (rule "I")
 AOT_assume 0: [H] ==> [O!]
 AOT_show obtain xs wher cl:\openc\<>< l = cs> k @ xs @[π l]
 proof (rule "safe-ext"[axiom_inst, THEN "E", OF "&I"])
 AOT_show [λx ConceptOf(x,H)]
 using 0 ConceptOfOrdinaryProperty[THEN "E"] by blast
 AOT_show x (ConceptOf(x,H) FormOf(x,H))
 proof(safe intro!: RN GEN)
 AOT_modally_strict {
 fix x
 AOT_modally_strict {
 AOT_have A!x ?thesis using cs_less.intros[OF len take] .
 by (simp add: "oth-class-taut:3:a")
 AOT_hence C!x A!x
 using "rule-id-df:1[zero]"[OF concepts, OF "oa-exist:2"]
 "rule=E" id_sym by fast
 }
 AOT_thus ConceptOf(x,H) FormOf(x,H)
 by (AOT_subst_def "tform-of";
 AOT_subst_def "concept-of-G";
 AOT_subst C!x A!x)
 (auto intro!: "I" "I" "&I" dest: "&E")
 }
 qed
 qed
 

  equal_E_rigid_one_to_one: 1-1((=E))
  (safe intro!: "df-1-1:2"[THEN "dfI"] "&I" "df-1-1:1"[THEN "dfI"]
 GEN "I" "df-rigid-rel:1"[THEN "dfI"] "=E[denotes]")
 fix x y z
 AOT_assume x =E z & y =E z
 AOT_thus x = y
 by (metis "rule=E" "&E"(1) "Conjunction Simplification"(2)
 "=E-simple:2" id_sym "E")
 
 AOT_have xy (x =E y x =E y)
 proof(rule GEN; rule GEN)
 AOT_show (x =E y x =E y) for x y
 by (meson RN "deduction-theorem" "id-nec3:1" "E"(1))
 qed
 AOT_hence x1...xn ([(=E)]x1...xn [(=E)]x1...xn)
 by (rule tuple_forall[THEN "dfI"])
 AOT_thus x1...xn ([(=E)]x1...xn [(=E)]x1...xn)
 using BF[THEN "E"] by fast
 

  equal_E_domain: InDomainOf(x,(=E)) O!x
 (safe intro!: "I" "I")
 AOT_assume InDomainOf(x,(=E))
 AOT_hence y x =E y
 by (metis "dfE" "df-1-1:5")
 then AOT_obtain y where x =E y
 using "E"[rotated] by blast
 AOT_thus O!x
 using "=E-simple:1"[THEN "E"(1)] "&E" by blast
 
 AOT_assume O!x
 AOT_hence x =E x
 by (metis "ord=Eequiv:1"[THEN "E"])
 AOT_hence y x =E y
 using "I"(2) by fast
 AOT_thus InDomainOf(x,(=E))
 by (metis "dfI" "df-1-1:5")
 

  shared_urelement_projection_identity:
 assumes y [λx (y[λz [R]zx])]
 shows F([F]a [F]b) [λz [R]za] = [λz [R]zb]
 (rule "I")
 AOT_assume 0: F([F]a [F]b)
 {
 fix z
 AOT_have [λx (z[λz [R]zx])]
 using assms[THEN "E"(2)].
 AOT_hence 1: x y (F ([F]x [F]y) (z[λz [R]zx] z[λz [R]zy]))
 using "kirchner-thm-cor:1"[THEN "E"]
 by blast
 AOT_have (z[λz [R]za] z[λz [R]zb])
 using 1[THEN "E"(2), THEN "E"(2), THEN "E", OF 0] by blast
 }
 AOT_hence z (z[λz [R]za] z[λz [R]zb])
 by (rule GEN)
 AOT_hence z(z[λz [R]za] z[λz [R]zb])
 by (rule BF[THEN "E"])
 AOT_thus
 by (AOT_subst_def "identity:2")
 (auto intro!: "&I" "cqt:2")
 

  shared_urelement_exemplification_identity:
 assumes x (y[λ
 shows F([F]a [F]b) ([G]a) = ([G]b)
 (rule "I")
 AOT_assume 0: F([F]a [F]b)
 {
 fix z
 AOT_have csi = [x] knot>i cd proof -
 using assms[THEN "E"(2)].
 AOT_hence 1: F ([F]x (z[λz [G]x]
 using "kirchner-thm-cor:1"[THEN "E"]
 by blast
 AOT_have (z[λz [G]a] z[λz [G]b])
 using 1[THEN "E"(2), THEN "E",OF0 b lst
 }
 AOT_hence z ?thesis by blast
 by (rule GEN)
 AOT_hence z(z[λz [G]a] z[λz [G]b])
 by (rule BF[THEN "E"])
 AOT_hence [λz [G]a] = [λz [G]b]
 by (AOT_subst_def "identity:2")
 (auto intro!: "&I" "cqt:2")
 AOT_thus ([G]a) = ([G]b)
java.lang.NullPointerException
 

 
 introduction rules for the upcoming extension of @{thm "cqt:2[lambda]"}
 are explicitly allowed (while they are currently not part of the
 abstraction layer).

 
 
 AOT_modally_strict {
 AOT_have
 by (safe intro!: GEN "cqt:2" AOT_instance_of_cqt_2_intro_next)
 AOT_have Gy [λx (y[λz [G]x])]
 by (safe intro!: GEN "cqt:2" AOT_instance_of_cqt_2_intro_next)
 }
 

 

Messung V0.5 in Prozent
C=35 H=84 G=64

¤ Dauer der Verarbeitung: 0.55 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen



NIST Cobol Testsuite



Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.