text‹
begin{remark}
In order to define a general identity symbol that can act
on all types of terms a type class is introduced
which assumes the substitution property which
is needed to derive the corresponding axiom.
This type class is instantiated for all relation types, individual terms
and individuals.
end{remark} ›
class identifiable = fixes identity :: "'a==>'a==>o" (infixl‹=›63) assumes l_identity: "w ⊨ x = y ==> w ⊨ φ x ==> w ⊨ φ y" begin abbreviation notequal (infixl‹\≠›63) where "notequal ≡ λ x y . \<not>(x = y)" end
instantiation κ :: identifiable begin definition identity_κ where"identity_κ ≡ basic_identity\<kappa>" instanceproof fix x y :: κ and w φ show"[x = y in w] ==> [φ x in w] ==> [φ y in w]" unfolding identity_κ_def using MetaSolver.Eqκ_prop .. qed end
instantiation ν :: identifiable begin definition identity_ν where"identity_ν ≡ λ x y . xP= yP" instanceproof fix α :: ν and β :: ν and v φ assume"v ⊨ α = β" hence"v ⊨ αP= βP" unfolding identity_ν_defby auto hence"∧φ.(v ⊨ φ (αP)) ==> (v ⊨ φ (βP))" using l_identity by auto hence"(v ⊨ φ (rep (αP))) ==> (v ⊨ φ (rep (βP)))" by meson thus"(v ⊨ φ α) ==> (v ⊨ φ β)" by (simp only: rep_proper_id) qed end
instantiation Π1 :: identifiable begin definition identity_Π1where"identity_Π1≡ basic_identity1" instanceproof fix F G :: Π1and w φ show"(w ⊨ F = G) ==> (w ⊨ φ F) ==> (w ⊨ φ G)" unfolding identity_Π1_defusing MetaSolver.Eq1_prop .. qed end
instantiation Π2 :: identifiable begin definition identity_Π2where"identity_Π2≡ basic_identity2" instanceproof fix F G :: Π2and w φ show"(w ⊨ F = G) ==> (w ⊨ φ F) ==> (w ⊨ φ G)" unfolding identity_Π2_defusing MetaSolver.Eq2_prop .. qed end
instantiation Π3 :: identifiable begin definition identity_Π3where"identity_Π3≡ basic_identity3" instanceproof fix F G :: Π3and w φ show"(w ⊨ F = G) ==> (w ⊨ φ F) ==> (w ⊨ φ G)" unfolding identity_Π3_defusing MetaSolver.Eq3_prop .. qed end
instantiationo :: identifiable begin definition identity_owhere"identity_o≡ basic_identity0" instanceproof fix F G :: oand w φ show"(w ⊨ F = G) ==> (w ⊨ φ F) ==> (w ⊨ φ G)" unfolding identity_o_defusing MetaSolver.Eq0_prop .. qed end
text‹
begin{remark}
The basic definitions of identity use type specific quantifiers
and identity symbols. Equivalent definitions that
use the general identity symbol and general quantifiers are provided.
end{remark} ›
named_theorems identity_defs lemma identityE_def[identity_defs]: "basic_identityE≡\<lambda>2 (λx y. (O!,xP)&(O!,yP)&\<box>(\<forall>F. (F,xP)\<equiv> (F,yP)))" unfolding basic_identityE_def forall_Π1_defby simp lemma identityE_infix_def[identity_defs]: "x =E y ≡(basic_identityE,x,y)"using basic_identityE_infix_def . lemma identity\<kappa>_def[identity_defs]: "(=) ≡ λx y. x =E y \<or> (A!,x)&(A!,y)&\<box>(\<forall> F. {x,F}\<equiv> {y,F})" unfolding identity_κ_def basic_identity\<kappa>_def forall_Π1_defby simp lemma identity\<nu>_def[identity_defs]: "(=) ≡ λx y. (xP) =E (yP) \<or> (A!,xP)&(A!,yP)&\<box>(\<forall> F. {xP,F}\<equiv> {yP,F})" unfolding identity_ν_def identity\<kappa>_defby simp lemma identity1_def[identity_defs]: "(=) ≡ λF G. \<box>(\<forall> x . {xP,F}\<equiv> {xP,G})" unfolding identity_Π1_def basic_identity1_def forall_ν_defby simp lemma identity2_def[identity_defs]: "(=) ≡ λF G. \<forall> x. (\<lambda>y. (F,xP,yP)) = (\<lambda>y. (G,xP,yP)) & (\<lambda>y. (F,yP,xP)) = (\<lambda>y. (G,yP,xP))" unfolding identity_Π2_def identity_Π1_def basic_identity2_def forall_ν_defby simp lemma identity3_def[identity_defs]: "(=) ≡ λF G. \<forall> x y. (\<lambda>z. (F,zP,xP,yP)) = (\<lambda>z. (G,zP,xP,yP)) & (\<lambda>z. (F,xP,zP,yP)) = (\<lambda>z. (G,xP,zP,yP)) & (\<lambda>z. (F,xP,yP,zP)) = (\<lambda>z. (G,xP,yP,zP))" unfolding identity_Π3_def identity_Π1_def basic_identity3_def forall_ν_defby simp lemma identity\<o>_def[identity_defs]: "(=) ≡ λF G. (\<lambda>y. F) = (\<lambda>y. G)" unfolding identity_o_def identity_Π1_def basic_identity0_defby simp
(*<*) end (*>*)
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.8 Sekunden
(vorverarbeitet am 2026-06-10)
¤
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.