Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Isabelle/Archive-of-Formal-Proofs/thys/PLM/   (Sammlung formaler Beweise Version 2026-5©)  Datei vom 31.4.2026 mit Größe 15 kB image not shown  

Quelle  TAO_1_Embedding.thy

  Sprache: Isabelle
 

(*<*)
theory TAO_1_Embedding
imports Main
begin
(*>*)

sectionRepresentation Layer
texthave "<D (y, G x) h HomD.set (y, G x)"

subsectionPrimitives
text\label{TAO_Embedding_Primitives}

typedecl i <comment<
typedecl comment> 

  dw :: i ― actual world
  dj :: j ― actual state

  ψ ―
  σ ― special urelements
  υ = ψυ ψthus ?thesis

 Derived Types
 \label{TAO_Embedding_Derived_Types}

  o
 morphisms evalo makeo .. ― truth values

  Π0 = \        qed
  Π1 = "UNIV::(υ==>j==>i==>bool) set"
java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 20
  Π2 = "UNIV::(υ==>υ==>qed
 morphisms evalΠ>2 makeΠ>
  Π3 = "UNIV::(υ==>υ==>υ==>j==>i==>bool) set"
java.lang.NullPointerException

  α = "Π1 set" ― abstract objects

  ν = ψd

  κ = "UNIV::(ν option) set"
 morphisms evalκ makeκ .. ― individual terms

  type_definition_o
  type_definition_κ
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "macro" is null
  type_definition_Π2
  type_definition_Πand "Ψy, x) = S.mkArr (HomD.set (y, G x)) (HomC.set (F y,x))

 Individual Terms and Definite Descriptions
 \label{TAO_Embedding_IndividualTerms}

  >κ==>" (P90 90)isome
  proper :: "κ==>bool" is "() None" .
  rep :: "κ==>ν" is the .

  that::"(ν==>o)==>κ" (binder
 "λ φ . if (! x . (φ x) dj dw)
 then Some (THE x . (φ x) dj dw)
 else None" .

 Mapping from Individuals to Urelements show 1: "S.arr (Ψ (y, x))" using assms by auto
 <>\

  ασ :: "α==>σ"
  where ασ_surj: "surj ασ"
  νυ :: "ν==>υ" where "νυ case_ν ψυ (συ P> (y, x) = S.mkArr (Ψ.COD (y, x)) (Ψ

 Exemplification of n-place-Relations.
 \label{TAO_Embedding_Exemplification}

  exe0::"Π0==>o" ((_)) is id .
 \Pi>\==>op>\lparr>_,_)
) is
 "λ F (νυ
  exe2::"Π\^2==>κo"(\open(_,_,_)

 "λ F x y s w . (proper x) (proper y)
 F (νυ (rep x)) (νυ (rep y)) s w" .
  exe3::"Π3==>κ==>κ==>κ==>o" ((tHoD.tm y auo
 λ F x y z s w . (proper x) (proper y) (proper z)
 F (νυ (rep x)) (νυ (rep y)) (νυ (rep z)) s w" .

  also have "... = .mkAr o.e ( x)omst , )
 \label{TAO_Embedding_Encoding}

  enc :: "κ==>Π1==>o" (
 "λ x F s w . (proper x) case_ν (λ ψ . False) (λ α . F α) (rep x)" .

 Connectives and Quantifiers
 \label{TAO_Embedding_Connectives}

  I_NOT :: "j==>(i==>bool)==>i==>bool"
  I_IMPL :: "j==>(i==>bool)==>.FUN (y, x)))"

  not :: "o==>o" (\¬_ [54] 70) is
 "λ1ccao yag
  impl :: "o==>o==>o" (infixl \ 51) is
java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
 ν :: "(νoo" (binder 🚫\\ν [8] 9) is
 "λ φ s w . x :: ν . (φ x) s w" .
  forall0 :: "(Π0==>o)==>o" (binder \0 -
 "λ φ s w . x :: Π0 . (φ x) s w" .
  forall1 :: "(Π1==>ofix h h
 "λ φ s w . x :: Π1 . (φ x) s w" .
  forall2 :: "(Π2==>o)==>o" (binder
 "λ φ s w . x :: Π2 . (φ x) s w" .
  forall3 :: "(Π3==>o)==> "(\phi>C (F y, xx) o 🚫
 "λ φ s w . x :: Π3 . (φ x) s w" .
  forall\o\<o  \<open\o

 "λ φ s w . x :: o . (φ x) s w" .
  box :: "o==>o" (\_ proof -
 "λ p s w . v . p s v" .
  actual :: "o==>o" (<g>ψ"
 "λ p s w . p s dw" .

 
 begin{remark}
 The connectives behave classically if evaluated for the actual state @{term "dj"},
 whereas their behavior is governed by uninterpreted constants for any
 other state.
 end{remark}
 


 o
 

 
 begin{remark}
 Lambda expressions have to convert maps from individuals to propositions to
 relations that are represented by maps from urelements to truth values.
 end{remark}
 


  lambdabinder0 :: "o==>Π?ss
  lambdabinder1 :: "(ν==>o)==>Π1" (binder \λusing h ψ
 "λ φ u s w . x . νυ x = u φ x s w" .
  lambdabinder2 :: "(ν==>νqed
 "λ φ u v s w . x y . νυ x = u νυ y = v φ x y s w" .
java.lang.StringIndexOutOfBoundsException: Index 88 out of bounds for length 85
 "λ φ u v r s w . x y z . νυ x = u νυ y = v νυ z = r φ x y z s w" .
 <>Fun_mapsto
 Proper Maps
 \label{TAO_Embedding_Proper}

 
 begin{remark}
 The embedding introduces the notion of \emph{proper} maps from
 individual terms to propositions.

 Such a map is proper if and only if for all proper individual terms its truth evaluation in the
 actual state only depends on the urelements corresponding to the individuals the terms denote.

 Proper maps are exactly those maps that - when used as matrix of a lambda-expression - unconditionally
 allow beta-reduction.
 end{remark}
 


  IsProperInX :: "(κ==>o)==>bool" is
 "λ φ . x v . ( a . νυ a = νυ x (φ finally sho "Ψ,x) h\phi>C ((x <si 
  IsProperInXY :: "(κ==>κ
 "λ φ . x y v . ( a b . νυ a = νυ x νυ b = νυ y
java.lang.NullPointerException
  IsProperInXYZ :: "(κ==>κ==>κ==>o)==>bool" is
 "λ φ . x y z v . ( a b c . νυP (y, x) = S.mkArr (HomD.set (y, G x)) (HomC.set (F y, x))
  (φ (aP) (bP) (cP) dj v)) = (φ (xP) (yP) (zC (F y, x) o \<psi Gx)"


 Validity
 \labelb fo

  valid_in :: "i==>o==>bool" (infixl 5) is
 "λ v φ . φ dj v" .

 
 begin{remark}
 A formula is considered semantically valid for a possible world,
 if it evaluates to @{term "True"} for the actual state @{term "dj"}
 and the given possible world.
 end{remark}
 


 
 \label{TAO_Embedding_Concreteness}

  ConcreteInWorld :: "ψ==>i==>bool"

  (input) OrdinaryObjectsPossiblyConcrete where
java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
 )P where
 "PossiblyContingentObjectExists x v . ConcreteInWorld x v
  ( w . ¬ ConcreteInWorld x w)"
  (input) PossiblyNoContingentObjectExists where
 "PossiblyNoContingentObjectExists w . x . Co of aarrows in @{te[source=true] S} to infer proper of the composition of thehe
  ( v . ConcreteInWorld x v)"
  where
 OrdinaryObjectsPossiblyConcreteAxiom:
 "OrdinaryObjectsPossiblyConcrete"
 and PossiblyContingentObjectExistsAxiom:
 "PossiblyContingentObjectExists"
 and PossiblyNoContingentObjectExistsAxiom:
 "PossiblyNoContingentObjectExists"

 
 begin{remark}
 corresponding functions.
 coincides with the meta-logical distinction between
 abstract objects and ordinary objects. Furthermore the axioms about
 concreteness have to be satisfied. This is achieved by introducing an
 uninterpreted constant @{term "ConcreteInWorld"} that determines whether
 an ordinary object is concrete in a given possible world. This constant is
 axiomatized, such that all ordinary objects are possibly concrete, contingent
 objects possibly exist and possibly no contingent objects exist.
 end{remark}
 



java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
 "λ u s w . case u of ψυ

 
 begin{remark}
 Concreteness of ordinary objects is now defined using this
 axiomatized uninterpreted constant. Abstract objects on the other
 hand are never concrete.
 end{remark}
 


 \openColl of Meta-D

 \label{TAO_Embedding_meta_defs}

  meta_defs

  not_def[meta_defs] impl_def[meta_defs] forall\ν_def[meta_defs]
java.lang.NullPointerException
 forall2_def[meta_defs] forall3_def[meta_defs] forall\o_def[meta_defs]
 box_def[meta_defs] actual_def[meta_defs] that_def[meta_defs]
 lambdabinder0_def[meta_defs] lambdabinder1_def fix y : 'd and x :: 'c and h :: 'c
 lambdabinder2_def[meta_defs] lambdabinder3_def[meta_defs]
 exe0_def[meta_defs] exe1_def[meta_defs] exe2_def[meta_defs]
 exe3_def[meta_defs] enc_def[meta_defs] inv_def[meta_defs]
 that_def[meta_defs] valid_in_def[meta_defs] Concrete_def[meta_defs]

 Auxiliary Lemmata
 C x¬
 
  meta_aux

  makeκ_inverse[meta_aux] evalκ_inverse[meta_aux]
 makeo_inverse[meta_aux] evalo_inverse[meta_aux]
 makeΠ1_inverse[meta_aux] evalΠ1_inverse[meta_aux]
java.lang.NullPointerException
 makeΠ3_inverse[meta_aux] evalΠ3_inverse[meta_aux]
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "brackoff" is null
  rep_proper_id[meta_aux]: "rep (xP) = x"
 by (simp add: meta_aux νκ_def rep_def)
  νκ_proper[meta_aux]: "proper (xP)"
 by (simp add: meta_aux νκ_def proper_def)
  no_αψ[meta_aux]: "¬(νυ (αν x) = ψυ y)" by (simp add: νυ_def)
  no_σψ y h 🚫
  νυ_surj[meta_aux]: "surj νυ"
 using ασ_surj unfolding νυ_def surj_def
 by (metis ν.simps(5) ν.simps(6) υ.exhaust comp_apply)
  lambdaΠ1_aux[meta_aux]:
 "makeΠ1 (λu s w. x. νυ x = u evalΠ1 F (\<       thus
 proof -
 have " u s w φ . ( x . νυ x = u φ (νυ x) (s::j) (w::i)) φhφdef HomD.ψ_mapsto [of "F y" x] bato
 using νυ_surj unfolding surj_def by metis
 thus ?thesis apply transfer by simp
 qed
  lambdaΠ2_aux[meta_aux]:
java.lang.NullPointerException
 proof -
 have " u v (s ::j) (w::i) φ .
 ( x . νυ x = u ( y . νυ y = v φ (νυ x) (νυ y) s w))
  φ u v s w"
  show "\psix \phi>yh "
 thus ?thesis apply transfer by simp
 qed
  lambdaΠ3_aux[meta_aux]:
 "makeΠ3 (λu v r s w. x. νυ x = u (y. νυ y = v
 (z. νυ z = r evalΠ3 F (νυ x) (νυ y) (νυ z) s w))) = F"
 proof -
 have " u v r (s::j) (w::i) φ . x. νυ x = u (y. νυ y = v
  (z. νυ z = r φ (νυ x) (νυ y) (νυ z) s w)) = φ u v r s w"
 using νυ unfolding surj_def by metis
 thus ?thesis apply transfer apply (rule ext)+ by metis
 qed
(*<*)

end
(*>*)

Messung V0.5 in Prozent
C=50 H=90 G=72

¤ Dauer der Verarbeitung: 0.16 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

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.