| Intuitionistic Logic Explorer Theorem List (p. 22 of 158) | < Previous Next > | |
| Bad symbols? Try the
GIF version. |
||
|
Mirrors > Metamath Home Page > ILE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
||
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | euan 2101 | Introduction of a conjunct into unique existential quantifier. (Contributed by NM, 19-Feb-2005.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ (𝜑 → ∀𝑥𝜑) ⇒ ⊢ (∃!𝑥(𝜑 ∧ 𝜓) ↔ (𝜑 ∧ ∃!𝑥𝜓)) | ||
| Theorem | euanv 2102* | Introduction of a conjunct into unique existential quantifier. (Contributed by NM, 23-Mar-1995.) |
| ⊢ (∃!𝑥(𝜑 ∧ 𝜓) ↔ (𝜑 ∧ ∃!𝑥𝜓)) | ||
| Theorem | euor2 2103 | Introduce or eliminate a disjunct in a unique existential quantifier. (Contributed by NM, 21-Oct-2005.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ (¬ ∃𝑥𝜑 → (∃!𝑥(𝜑 ∨ 𝜓) ↔ ∃!𝑥𝜓)) | ||
| Theorem | sbmo 2104* | Substitution into "at most one". (Contributed by Jeff Madsen, 2-Sep-2009.) |
| ⊢ ([𝑦 / 𝑥]∃*𝑧𝜑 ↔ ∃*𝑧[𝑦 / 𝑥]𝜑) | ||
| Theorem | mo4f 2105* | "At most one" expressed using implicit substitution. (Contributed by NM, 10-Apr-2004.) |
| ⊢ Ⅎ𝑥𝜓 & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃*𝑥𝜑 ↔ ∀𝑥∀𝑦((𝜑 ∧ 𝜓) → 𝑥 = 𝑦)) | ||
| Theorem | mo4 2106* | "At most one" expressed using implicit substitution. (Contributed by NM, 26-Jul-1995.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃*𝑥𝜑 ↔ ∀𝑥∀𝑦((𝜑 ∧ 𝜓) → 𝑥 = 𝑦)) | ||
| Theorem | eu4 2107* | Uniqueness using implicit substitution. (Contributed by NM, 26-Jul-1995.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥𝜑 ↔ (∃𝑥𝜑 ∧ ∀𝑥∀𝑦((𝜑 ∧ 𝜓) → 𝑥 = 𝑦))) | ||
| Theorem | exmoeudc 2108 | Existence in terms of "at most one" and uniqueness. (Contributed by Jim Kingdon, 3-Jul-2018.) |
| ⊢ (DECID ∃𝑥𝜑 → (∃𝑥𝜑 ↔ (∃*𝑥𝜑 → ∃!𝑥𝜑))) | ||
| Theorem | moim 2109 | "At most one" is preserved through implication (notice wff reversal). (Contributed by NM, 22-Apr-1995.) |
| ⊢ (∀𝑥(𝜑 → 𝜓) → (∃*𝑥𝜓 → ∃*𝑥𝜑)) | ||
| Theorem | moimi 2110 | "At most one" is preserved through implication (notice wff reversal). (Contributed by NM, 15-Feb-2006.) |
| ⊢ (𝜑 → 𝜓) ⇒ ⊢ (∃*𝑥𝜓 → ∃*𝑥𝜑) | ||
| Theorem | moimv 2111* | Move antecedent outside of "at most one". (Contributed by NM, 28-Jul-1995.) |
| ⊢ (∃*𝑥(𝜑 → 𝜓) → (𝜑 → ∃*𝑥𝜓)) | ||
| Theorem | euimmo 2112 | Uniqueness implies "at most one" through implication. (Contributed by NM, 22-Apr-1995.) |
| ⊢ (∀𝑥(𝜑 → 𝜓) → (∃!𝑥𝜓 → ∃*𝑥𝜑)) | ||
| Theorem | euim 2113 | Add existential unique existential quantifiers to an implication. Note the reversed implication in the antecedent. (Contributed by NM, 19-Oct-2005.) (Proof shortened by Andrew Salmon, 14-Jun-2011.) |
| ⊢ ((∃𝑥𝜑 ∧ ∀𝑥(𝜑 → 𝜓)) → (∃!𝑥𝜓 → ∃!𝑥𝜑)) | ||
| Theorem | moan 2114 | "At most one" is still the case when a conjunct is added. (Contributed by NM, 22-Apr-1995.) |
| ⊢ (∃*𝑥𝜑 → ∃*𝑥(𝜓 ∧ 𝜑)) | ||
| Theorem | moani 2115 | "At most one" is still true when a conjunct is added. (Contributed by NM, 9-Mar-1995.) |
| ⊢ ∃*𝑥𝜑 ⇒ ⊢ ∃*𝑥(𝜓 ∧ 𝜑) | ||
| Theorem | moor 2116 | "At most one" is still the case when a disjunct is removed. (Contributed by NM, 5-Apr-2004.) |
| ⊢ (∃*𝑥(𝜑 ∨ 𝜓) → ∃*𝑥𝜑) | ||
| Theorem | mooran1 2117 | "At most one" imports disjunction to conjunction. (Contributed by NM, 5-Apr-2004.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ ((∃*𝑥𝜑 ∨ ∃*𝑥𝜓) → ∃*𝑥(𝜑 ∧ 𝜓)) | ||
| Theorem | mooran2 2118 | "At most one" exports disjunction to conjunction. (Contributed by NM, 5-Apr-2004.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ (∃*𝑥(𝜑 ∨ 𝜓) → (∃*𝑥𝜑 ∧ ∃*𝑥𝜓)) | ||
| Theorem | moanim 2119 | Introduction of a conjunct into at-most-one quantifier. (Contributed by NM, 3-Dec-2001.) |
| ⊢ Ⅎ𝑥𝜑 ⇒ ⊢ (∃*𝑥(𝜑 ∧ 𝜓) ↔ (𝜑 → ∃*𝑥𝜓)) | ||
| Theorem | moanimv 2120* | Introduction of a conjunct into at-most-one quantifier. (Contributed by NM, 23-Mar-1995.) |
| ⊢ (∃*𝑥(𝜑 ∧ 𝜓) ↔ (𝜑 → ∃*𝑥𝜓)) | ||
| Theorem | moaneu 2121 | Nested at-most-one and unique existential quantifiers. (Contributed by NM, 25-Jan-2006.) |
| ⊢ ∃*𝑥(𝜑 ∧ ∃!𝑥𝜑) | ||
| Theorem | moanmo 2122 | Nested at-most-one quantifiers. (Contributed by NM, 25-Jan-2006.) |
| ⊢ ∃*𝑥(𝜑 ∧ ∃*𝑥𝜑) | ||
| Theorem | mopick 2123 | "At most one" picks a variable value, eliminating an existential quantifier. (Contributed by NM, 27-Jan-1997.) |
| ⊢ ((∃*𝑥𝜑 ∧ ∃𝑥(𝜑 ∧ 𝜓)) → (𝜑 → 𝜓)) | ||
| Theorem | eupick 2124 | Existential uniqueness "picks" a variable value for which another wff is true. If there is only one thing 𝑥 such that 𝜑 is true, and there is also an 𝑥 (actually the same one) such that 𝜑 and 𝜓 are both true, then 𝜑 implies 𝜓 regardless of 𝑥. This theorem can be useful for eliminating existential quantifiers in a hypothesis. Compare Theorem *14.26 in [WhiteheadRussell] p. 192. (Contributed by NM, 10-Jul-1994.) |
| ⊢ ((∃!𝑥𝜑 ∧ ∃𝑥(𝜑 ∧ 𝜓)) → (𝜑 → 𝜓)) | ||
| Theorem | eupicka 2125 | Version of eupick 2124 with closed formulas. (Contributed by NM, 6-Sep-2008.) |
| ⊢ ((∃!𝑥𝜑 ∧ ∃𝑥(𝜑 ∧ 𝜓)) → ∀𝑥(𝜑 → 𝜓)) | ||
| Theorem | eupickb 2126 | Existential uniqueness "pick" showing wff equivalence. (Contributed by NM, 25-Nov-1994.) |
| ⊢ ((∃!𝑥𝜑 ∧ ∃!𝑥𝜓 ∧ ∃𝑥(𝜑 ∧ 𝜓)) → (𝜑 ↔ 𝜓)) | ||
| Theorem | eupickbi 2127 | Theorem *14.26 in [WhiteheadRussell] p. 192. (Contributed by Andrew Salmon, 11-Jul-2011.) |
| ⊢ (∃!𝑥𝜑 → (∃𝑥(𝜑 ∧ 𝜓) ↔ ∀𝑥(𝜑 → 𝜓))) | ||
| Theorem | mopick2 2128 | "At most one" can show the existence of a common value. In this case we can infer existence of conjunction from a conjunction of existence, and it is one way to achieve the converse of 19.40 1645. (Contributed by NM, 5-Apr-2004.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ ((∃*𝑥𝜑 ∧ ∃𝑥(𝜑 ∧ 𝜓) ∧ ∃𝑥(𝜑 ∧ 𝜒)) → ∃𝑥(𝜑 ∧ 𝜓 ∧ 𝜒)) | ||
| Theorem | moexexdc 2129 | "At most one" double quantification. (Contributed by Jim Kingdon, 5-Jul-2018.) |
| ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (DECID ∃𝑥𝜑 → ((∃*𝑥𝜑 ∧ ∀𝑥∃*𝑦𝜓) → ∃*𝑦∃𝑥(𝜑 ∧ 𝜓))) | ||
| Theorem | euexex 2130 | Existential uniqueness and "at most one" double quantification. (Contributed by Jim Kingdon, 28-Dec-2018.) |
| ⊢ Ⅎ𝑦𝜑 ⇒ ⊢ ((∃!𝑥𝜑 ∧ ∀𝑥∃*𝑦𝜓) → ∃*𝑦∃𝑥(𝜑 ∧ 𝜓)) | ||
| Theorem | 2moex 2131 | Double quantification with "at most one". (Contributed by NM, 3-Dec-2001.) |
| ⊢ (∃*𝑥∃𝑦𝜑 → ∀𝑦∃*𝑥𝜑) | ||
| Theorem | 2euex 2132 | Double quantification with existential uniqueness. (Contributed by NM, 3-Dec-2001.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ (∃!𝑥∃𝑦𝜑 → ∃𝑦∃!𝑥𝜑) | ||
| Theorem | 2eumo 2133 | Double quantification with existential uniqueness and "at most one." (Contributed by NM, 3-Dec-2001.) |
| ⊢ (∃!𝑥∃*𝑦𝜑 → ∃*𝑥∃!𝑦𝜑) | ||
| Theorem | 2eu2ex 2134 | Double existential uniqueness. (Contributed by NM, 3-Dec-2001.) |
| ⊢ (∃!𝑥∃!𝑦𝜑 → ∃𝑥∃𝑦𝜑) | ||
| Theorem | 2moswapdc 2135 | A condition allowing swap of "at most one" and existential quantifiers. (Contributed by Jim Kingdon, 6-Jul-2018.) |
| ⊢ (DECID ∃𝑥∃𝑦𝜑 → (∀𝑥∃*𝑦𝜑 → (∃*𝑥∃𝑦𝜑 → ∃*𝑦∃𝑥𝜑))) | ||
| Theorem | 2euswapdc 2136 | A condition allowing swap of uniqueness and existential quantifiers. (Contributed by Jim Kingdon, 7-Jul-2018.) |
| ⊢ (DECID ∃𝑥∃𝑦𝜑 → (∀𝑥∃*𝑦𝜑 → (∃!𝑥∃𝑦𝜑 → ∃!𝑦∃𝑥𝜑))) | ||
| Theorem | 2exeu 2137 | Double existential uniqueness implies double unique existential quantification. (Contributed by NM, 3-Dec-2001.) |
| ⊢ ((∃!𝑥∃𝑦𝜑 ∧ ∃!𝑦∃𝑥𝜑) → ∃!𝑥∃!𝑦𝜑) | ||
| Theorem | 2eu4 2138* | This theorem provides us with a definition of double existential uniqueness ("exactly one 𝑥 and exactly one 𝑦"). Naively one might think (incorrectly) that it could be defined by ∃!𝑥∃!𝑦𝜑. See 2exeu 2137 for a one-way implication. (Contributed by NM, 3-Dec-2001.) |
| ⊢ ((∃!𝑥∃𝑦𝜑 ∧ ∃!𝑦∃𝑥𝜑) ↔ (∃𝑥∃𝑦𝜑 ∧ ∃𝑧∃𝑤∀𝑥∀𝑦(𝜑 → (𝑥 = 𝑧 ∧ 𝑦 = 𝑤)))) | ||
| Theorem | 2eu7 2139 | Two equivalent expressions for double existential uniqueness. (Contributed by NM, 19-Feb-2005.) |
| ⊢ ((∃!𝑥∃𝑦𝜑 ∧ ∃!𝑦∃𝑥𝜑) ↔ ∃!𝑥∃!𝑦(∃𝑥𝜑 ∧ ∃𝑦𝜑)) | ||
| Theorem | euequ1 2140* | Equality has existential uniqueness. (Contributed by Stefan Allan, 4-Dec-2008.) |
| ⊢ ∃!𝑥 𝑥 = 𝑦 | ||
| Theorem | exists1 2141* | Two ways to express "only one thing exists". The left-hand side requires only one variable to express this. Both sides are false in set theory. (Contributed by NM, 5-Apr-2004.) |
| ⊢ (∃!𝑥 𝑥 = 𝑥 ↔ ∀𝑥 𝑥 = 𝑦) | ||
| Theorem | exists2 2142 | A condition implying that at least two things exist. (Contributed by NM, 10-Apr-2004.) (Proof shortened by Andrew Salmon, 9-Jul-2011.) |
| ⊢ ((∃𝑥𝜑 ∧ ∃𝑥 ¬ 𝜑) → ¬ ∃!𝑥 𝑥 = 𝑥) | ||
Model the Aristotelian assertic syllogisms using modern notation. This section shows that the Aristotelian assertic syllogisms can be proven with our axioms of logic, and also provides generally useful theorems. In antiquity Aristotelian logic and Stoic logic (see mptnan 1434) were the leading logical systems. Aristotelian logic became the leading system in medieval Europe; this section models this system (including later refinements to it). Aristotle defined syllogisms very generally ("a discourse in which certain (specific) things having been supposed, something different from the things supposed results of necessity because these things are so") Aristotle, Prior Analytics 24b18-20. However, in Prior Analytics he limits himself to categorical syllogisms that consist of three categorical propositions with specific structures. The syllogisms are the valid subset of the possible combinations of these structures. The medieval schools used vowels to identify the types of terms (a=all, e=none, i=some, and o=some are not), and named the different syllogisms with Latin words that had the vowels in the intended order. "There is a surprising amount of scholarly debate about how best to formalize Aristotle's syllogisms..." according to Aristotle's Modal Proofs: Prior Analytics A8-22 in Predicate Logic, Adriane Rini, Springer, 2011, ISBN 978-94-007-0049-9, page 28. For example, Lukasiewicz believes it is important to note that "Aristotle does not introduce singular terms or premisses into his system". Lukasiewicz also believes that Aristotelian syllogisms are predicates (having a true/false value), not inference rules: "The characteristic sign of an inference is the word 'therefore'... no syllogism is formulated by Aristotle primarily as an inference, but they are all implications." Jan Lukasiewicz, Aristotle's Syllogistic from the Standpoint of Modern Formal Logic, Second edition, Oxford, 1957, page 1-2. Lukasiewicz devised a specialized prefix notation for representing Aristotelian syllogisms instead of using standard predicate logic notation. We instead translate each Aristotelian syllogism into an inference rule, and each rule is defined using standard predicate logic notation and predicates. The predicates are represented by wff variables that may depend on the quantified variable 𝑥. Our translation is essentially identical to the one use in Rini page 18, Table 2 "Non-Modal Syllogisms in Lower Predicate Calculus (LPC)", which uses standard predicate logic with predicates. Rini states, "the crucial point is that we capture the meaning Aristotle intends, and the method by which we represent that meaning is less important." There are two differences: we make the existence criteria explicit, and we use 𝜑, 𝜓, and 𝜒 in the order they appear (a common Metamath convention). Patzig also uses standard predicate logic notation and predicates (though he interprets them as conditional propositions, not as inference rules); see Gunther Patzig, Aristotle's Theory of the Syllogism second edition, 1963, English translation by Jonathan Barnes, 1968, page 38. Terms such as "all" and "some" are translated into predicate logic using the aproach devised by Frege and Russell. "Frege (and Russell) devised an ingenious procedure for regimenting binary quantifiers like "every" and "some" in terms of unary quantifiers like "everything" and "something": they formalized sentences of the form "Some A is B" and "Every A is B" as exists x (Ax and Bx) and all x (Ax implies Bx), respectively." "Quantifiers and Quantification", Stanford Encyclopedia of Philosophy, https://plato.stanford.edu/entries/quantification/ 1434. See Principia Mathematica page 22 and *10 for more information (especially *10.3 and *10.26). Expressions of the form "no 𝜑 is 𝜓 " are consistently translated as ∀𝑥(𝜑 → ¬ 𝜓). These can also be expressed as ¬ ∃𝑥(𝜑 ∧ 𝜓), per alinexa 1617. We translate "all 𝜑 is 𝜓 " to ∀𝑥(𝜑 → 𝜓), "some 𝜑 is 𝜓 " to ∃𝑥(𝜑 ∧ 𝜓), and "some 𝜑 is not 𝜓 " to ∃𝑥(𝜑 ∧ ¬ 𝜓). It is traditional to use the singular verb "is", not the plural verb "are", in the generic expressions. By convention the major premise is listed first. In traditional Aristotelian syllogisms the predicates have a restricted form ("x is a ..."); those predicates could be modeled in modern notation by constructs such as 𝑥 = 𝐴, 𝑥 ∈ 𝐴, or 𝑥 ⊆ 𝐴. Here we use wff variables instead of specialized restricted forms. This generalization makes the syllogisms more useful in more circumstances. In addition, these expressions make it clearer that the syllogisms of Aristolean logic are the forerunners of predicate calculus. If we used restricted forms like 𝑥 ∈ 𝐴 instead, we would not only unnecessarily limit their use, but we would also need to use set and class axioms, making their relationship to predicate calculus less clear. There are some widespread misconceptions about the existential assumptions made by Aristotle (aka "existential import"). Aristotle was not trying to develop something exactly corresponding to modern logic. Aristotle devised "a companion-logic for science. He relegates fictions like fairy godmothers and mermaids and unicorns to the realms of poetry and literature. In his mind, they exist outside the ambit of science. This is why he leaves no room for such nonexistent entities in his logic. This is a thoughtful choice, not an inadvertent omission. Technically, Aristotelian science is a search for definitions, where a definition is "a phrase signifying a thing's essence." (Topics, I.5.102a37, Pickard-Cambridge.)... Because nonexistent entities cannot be anything, they do not, in Aristotle's mind, possess an essence... This is why he leaves no place for fictional entities like goat-stags (or unicorns)." Source: Louis F. Groarke, "Aristotle: Logic", section 7. (Existential Assumptions), Internet Encyclopedia of Philosophy (A Peer-Reviewed Academic Resource), https://iep.utm.edu/aristotle-log/ 1617. Thus, some syllogisms have "extra" existence hypotheses that do not directly appear in Aristotle's original materials (since they were always assumed); they are added where they are needed. This affects barbari 2147, celaront 2148, cesaro 2153, camestros 2154, felapton 2159, darapti 2160, calemos 2164, fesapo 2165, and bamalip 2166. These are only the assertic syllogisms. Aristotle also defined modal syllogisms that deal with modal qualifiers such as "necessarily" and "possibly". Historically Aristotelian modal syllogisms were not as widely used. For more about modal syllogisms in a modern context, see Rini as well as Aristotle's Modal Syllogistic by Marko Malink, Harvard University Press, November 2013. We do not treat them further here. Aristotelean logic is essentially the forerunner of predicate calculus (as well as set theory since it discusses membership in groups), while Stoic logic is essentially the forerunner of propositional calculus. | ||
| Theorem | barbara 2143 | "Barbara", one of the fundamental syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and all 𝜒 is 𝜑, therefore all 𝜒 is 𝜓. (In Aristotelian notation, AAA-1: MaP and SaM therefore SaP.) For example, given "All men are mortal" and "Socrates is a man", we can prove "Socrates is mortal". If H is the set of men, M is the set of mortal beings, and S is Socrates, these word phrases can be represented as ∀𝑥(𝑥 ∈ 𝐻 → 𝑥 ∈ 𝑀) (all men are mortal) and ∀𝑥(𝑥 = 𝑆 → 𝑥 ∈ 𝐻) (Socrates is a man) therefore ∀𝑥(𝑥 = 𝑆 → 𝑥 ∈ 𝑀) (Socrates is mortal). Russell and Whitehead note that the "syllogism in Barbara is derived..." from syl 14. (quote after Theorem *2.06 of [WhiteheadRussell] p. 101). Most of the proof is in alsyl 1649. There are a legion of sources for Barbara, including https://www.friesian.com/aristotl.htm 1649, https://plato.stanford.edu/entries/aristotle-logic/ 1649, and https://en.wikipedia.org/wiki/Syllogism 1649. (Contributed by David A. Wheeler, 24-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜑) ⇒ ⊢ ∀𝑥(𝜒 → 𝜓) | ||
| Theorem | celarent 2144 | "Celarent", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, and all 𝜒 is 𝜑, therefore no 𝜒 is 𝜓. (In Aristotelian notation, EAE-1: MeP and SaM therefore SeP.) For example, given the "No reptiles have fur" and "All snakes are reptiles", therefore "No snakes have fur". Example from https://en.wikipedia.org/wiki/Syllogism. (Contributed by David A. Wheeler, 24-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜑) ⇒ ⊢ ∀𝑥(𝜒 → ¬ 𝜓) | ||
| Theorem | darii 2145 | "Darii", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and some 𝜒 is 𝜑, therefore some 𝜒 is 𝜓. (In Aristotelian notation, AII-1: MaP and SiM therefore SiP.) For example, given "All rabbits have fur" and "Some pets are rabbits", therefore "Some pets have fur". Example from https://en.wikipedia.org/wiki/Syllogism. (Contributed by David A. Wheeler, 24-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∃𝑥(𝜒 ∧ 𝜑) ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜓) | ||
| Theorem | ferio 2146 | "Ferio" ("Ferioque"), one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, and some 𝜒 is 𝜑, therefore some 𝜒 is not 𝜓. (In Aristotelian notation, EIO-1: MeP and SiM therefore SoP.) For example, given "No homework is fun" and "Some reading is homework", therefore "Some reading is not fun". This is essentially a logical axiom in Aristotelian logic. Example from https://en.wikipedia.org/wiki/Syllogism. (Contributed by David A. Wheeler, 24-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∃𝑥(𝜒 ∧ 𝜑) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) | ||
| Theorem | barbari 2147 | "Barbari", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, all 𝜒 is 𝜑, and some 𝜒 exist, therefore some 𝜒 is 𝜓. (In Aristotelian notation, AAI-1: MaP and SaM therefore SiP.) For example, given "All men are mortal", "All Greeks are men", and "Greeks exist", therefore "Some Greeks are mortal". Note the existence hypothesis (to prove the "some" in the conclusion). Example from https://en.wikipedia.org/wiki/Syllogism. (Contributed by David A. Wheeler, 27-Aug-2016.) (Revised by David A. Wheeler, 30-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜑) & ⊢ ∃𝑥𝜒 ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜓) | ||
| Theorem | celaront 2148 | "Celaront", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, all 𝜒 is 𝜑, and some 𝜒 exist, therefore some 𝜒 is not 𝜓. (In Aristotelian notation, EAO-1: MeP and SaM therefore SoP.) For example, given "No reptiles have fur", "All snakes are reptiles.", and "Snakes exist.", prove "Some snakes have no fur". Note the existence hypothesis. Example from https://en.wikipedia.org/wiki/Syllogism. (Contributed by David A. Wheeler, 27-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜑) & ⊢ ∃𝑥𝜒 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) | ||
| Theorem | cesare 2149 | "Cesare", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, and all 𝜒 is 𝜓, therefore no 𝜒 is 𝜑. (In Aristotelian notation, EAE-2: PeM and SaM therefore SeP.) Related to celarent 2144. (Contributed by David A. Wheeler, 27-Aug-2016.) (Revised by David A. Wheeler, 13-Nov-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜓) ⇒ ⊢ ∀𝑥(𝜒 → ¬ 𝜑) | ||
| Theorem | camestres 2150 | "Camestres", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and no 𝜒 is 𝜓, therefore no 𝜒 is 𝜑. (In Aristotelian notation, AEE-2: PaM and SeM therefore SeP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜒 → ¬ 𝜓) ⇒ ⊢ ∀𝑥(𝜒 → ¬ 𝜑) | ||
| Theorem | festino 2151 | "Festino", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, and some 𝜒 is 𝜓, therefore some 𝜒 is not 𝜑. (In Aristotelian notation, EIO-2: PeM and SiM therefore SoP.) (Contributed by David A. Wheeler, 25-Nov-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∃𝑥(𝜒 ∧ 𝜓) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | baroco 2152 | "Baroco", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and some 𝜒 is not 𝜓, therefore some 𝜒 is not 𝜑. (In Aristotelian notation, AOO-2: PaM and SoM therefore SoP.) For example, "All informative things are useful", "Some websites are not useful", therefore "Some websites are not informative." (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | cesaro 2153 | "Cesaro", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, all 𝜒 is 𝜓, and 𝜒 exist, therefore some 𝜒 is not 𝜑. (In Aristotelian notation, EAO-2: PeM and SaM therefore SoP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜒 → 𝜓) & ⊢ ∃𝑥𝜒 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | camestros 2154 | "Camestros", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, no 𝜒 is 𝜓, and 𝜒 exist, therefore some 𝜒 is not 𝜑. (In Aristotelian notation, AEO-2: PaM and SeM therefore SoP.) For example, "All horses have hooves", "No humans have hooves", and humans exist, therefore "Some humans are not horses". (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜒 → ¬ 𝜓) & ⊢ ∃𝑥𝜒 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | datisi 2155 | "Datisi", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and some 𝜑 is 𝜒, therefore some 𝜒 is 𝜓. (In Aristotelian notation, AII-3: MaP and MiS therefore SiP.) (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∃𝑥(𝜑 ∧ 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜓) | ||
| Theorem | disamis 2156 | "Disamis", one of the syllogisms of Aristotelian logic. Some 𝜑 is 𝜓, and all 𝜑 is 𝜒, therefore some 𝜒 is 𝜓. (In Aristotelian notation, IAI-3: MiP and MaS therefore SiP.) (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∃𝑥(𝜑 ∧ 𝜓) & ⊢ ∀𝑥(𝜑 → 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜓) | ||
| Theorem | ferison 2157 | "Ferison", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, and some 𝜑 is 𝜒, therefore some 𝜒 is not 𝜓. (In Aristotelian notation, EIO-3: MeP and MiS therefore SoP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∃𝑥(𝜑 ∧ 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) | ||
| Theorem | bocardo 2158 | "Bocardo", one of the syllogisms of Aristotelian logic. Some 𝜑 is not 𝜓, and all 𝜑 is 𝜒, therefore some 𝜒 is not 𝜓. (In Aristotelian notation, OAO-3: MoP and MaS therefore SoP.) For example, "Some cats have no tails", "All cats are mammals", therefore "Some mammals have no tails". A reorder of disamis 2156; prefer using that instead. (Contributed by David A. Wheeler, 28-Aug-2016.) (New usage is discouraged.) |
| ⊢ ∃𝑥(𝜑 ∧ ¬ 𝜓) & ⊢ ∀𝑥(𝜑 → 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) | ||
| Theorem | felapton 2159 | "Felapton", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, all 𝜑 is 𝜒, and some 𝜑 exist, therefore some 𝜒 is not 𝜓. (In Aristotelian notation, EAO-3: MeP and MaS therefore SoP.) For example, "No flowers are animals" and "All flowers are plants", therefore "Some plants are not animals". (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜑 → 𝜒) & ⊢ ∃𝑥𝜑 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜓) | ||
| Theorem | darapti 2160 | "Darapti", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, all 𝜑 is 𝜒, and some 𝜑 exist, therefore some 𝜒 is 𝜓. (In Aristotelian notation, AAI-3: MaP and MaS therefore SiP.) For example, "All squares are rectangles" and "All squares are rhombuses", therefore "Some rhombuses are rectangles". (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜑 → 𝜒) & ⊢ ∃𝑥𝜑 ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜓) | ||
| Theorem | calemes 2161 | "Calemes", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, and no 𝜓 is 𝜒, therefore no 𝜒 is 𝜑. (In Aristotelian notation, AEE-4: PaM and MeS therefore SeP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜓 → ¬ 𝜒) ⇒ ⊢ ∀𝑥(𝜒 → ¬ 𝜑) | ||
| Theorem | dimatis 2162 | "Dimatis", one of the syllogisms of Aristotelian logic. Some 𝜑 is 𝜓, and all 𝜓 is 𝜒, therefore some 𝜒 is 𝜑. (In Aristotelian notation, IAI-4: PiM and MaS therefore SiP.) For example, "Some pets are rabbits.", "All rabbits have fur", therefore "Some fur bearing animals are pets". Like darii 2145 with positions interchanged. (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∃𝑥(𝜑 ∧ 𝜓) & ⊢ ∀𝑥(𝜓 → 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜑) | ||
| Theorem | fresison 2163 | "Fresison", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓 (PeM), and some 𝜓 is 𝜒 (MiS), therefore some 𝜒 is not 𝜑 (SoP). (In Aristotelian notation, EIO-4: PeM and MiS therefore SoP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∃𝑥(𝜓 ∧ 𝜒) ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | calemos 2164 | "Calemos", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓 (PaM), no 𝜓 is 𝜒 (MeS), and 𝜒 exist, therefore some 𝜒 is not 𝜑 (SoP). (In Aristotelian notation, AEO-4: PaM and MeS therefore SoP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜓 → ¬ 𝜒) & ⊢ ∃𝑥𝜒 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | fesapo 2165 | "Fesapo", one of the syllogisms of Aristotelian logic. No 𝜑 is 𝜓, all 𝜓 is 𝜒, and 𝜓 exist, therefore some 𝜒 is not 𝜑. (In Aristotelian notation, EAO-4: PeM and MaS therefore SoP.) (Contributed by David A. Wheeler, 28-Aug-2016.) (Revised by David A. Wheeler, 2-Sep-2016.) |
| ⊢ ∀𝑥(𝜑 → ¬ 𝜓) & ⊢ ∀𝑥(𝜓 → 𝜒) & ⊢ ∃𝑥𝜓 ⇒ ⊢ ∃𝑥(𝜒 ∧ ¬ 𝜑) | ||
| Theorem | bamalip 2166 | "Bamalip", one of the syllogisms of Aristotelian logic. All 𝜑 is 𝜓, all 𝜓 is 𝜒, and 𝜑 exist, therefore some 𝜒 is 𝜑. (In Aristotelian notation, AAI-4: PaM and MaS therefore SiP.) Like barbari 2147. (Contributed by David A. Wheeler, 28-Aug-2016.) |
| ⊢ ∀𝑥(𝜑 → 𝜓) & ⊢ ∀𝑥(𝜓 → 𝜒) & ⊢ ∃𝑥𝜑 ⇒ ⊢ ∃𝑥(𝜒 ∧ 𝜑) | ||
This section adds one non-logical binary predicate to the first-order logic developed until here. We call it "the membership predicate" since it will be used in the next part as the membership predicate of set theory, but in this section, it has no other property than being "a binary predicate". "Non-logical" means that it does not belong to the logic. In our logic (and in most treatments), the only logical predicate is the equality predicate (see weq 1517). | ||
| Syntax | wcel 2167 |
Extend wff definition to include the membership connective between
classes.
For a general discussion of the theory of classes, see mmset.html#class. The purpose of introducing wff 𝐴 ∈ 𝐵 here is to allow us to prove the wel 2168 of predicate calculus in terms of the wceq 1364 of set theory, so that we do not overload the ∈ connective with two syntax definitions. This is done to prevent ambiguity that would complicate some Metamath parsers. The class variables 𝐴 and 𝐵 are introduced temporarily for the purpose of this definition but otherwise not used in predicate calculus. See df-clab 2183 for more information on the set theory usage of wcel 2167. |
| wff 𝐴 ∈ 𝐵 | ||
| Theorem | wel 2168 |
Extend wff definition to include atomic formulas with the membership
predicate. This is read either "𝑥 is an element of 𝑦",
or "𝑥 is a member of 𝑦", or "𝑥 belongs
to 𝑦",
or "𝑦 contains 𝑥". Note: The
phrase "𝑦 includes
𝑥 " means "𝑥 is a
subset of 𝑦"; to use it also for
𝑥
∈ 𝑦, as some
authors occasionally do, is poor form and causes
confusion, according to George Boolos (1992 lecture at MIT).
This syntactical construction introduces a binary non-logical predicate symbol ∈ into our predicate calculus. We will eventually use it for the membership predicate of set theory, but that is irrelevant at this point: the predicate calculus axioms for ∈ apply to any arbitrary binary predicate symbol. "Non-logical" means that the predicate is presumed to have additional properties beyond the realm of predicate calculus, although these additional properties are not specified by predicate calculus itself but rather by the axioms of a theory (in our case set theory) added to predicate calculus. "Binary" means that the predicate has two arguments. Instead of introducing wel 2168 as an axiomatic statement, as was done in an older version of this database, we introduce it by "proving" a special case of set theory's more general wcel 2167. This lets us avoid overloading the ∈ connective, thus preventing ambiguity that would complicate certain Metamath parsers. However, logically wel 2168 is considered to be a primitive syntax, even though here it is artificially "derived" from wcel 2167. Note: To see the proof steps of this syntax proof, type "MM> SHOW PROOF wel / ALL" in the Metamath program. (Contributed by NM, 24-Jan-2006.) |
| wff 𝑥 ∈ 𝑦 | ||
| Axiom | ax-13 2169 | Axiom of left equality for the binary predicate ∈. One of the equality and substitution axioms for a non-logical predicate in our predicate calculus with equality. It substitutes equal variables into the left-hand side of the ∈ binary predicate. Axiom scheme C12' in [Megill] p. 448 (p. 16 of the preprint). It is a special case of Axiom B8 (p. 75) of system S2 of [Tarski] p. 77. "Non-logical" means that the predicate is not a primitive of predicate calculus proper but instead is an extension to it. "Binary" means that the predicate has two arguments. In a system of predicate calculus with equality, like ours, equality is not usually considered to be a non-logical predicate. In systems of predicate calculus without equality, it typically would be. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 = 𝑦 → (𝑥 ∈ 𝑧 → 𝑦 ∈ 𝑧)) | ||
| Axiom | ax-14 2170 | Axiom of right equality for the binary predicate ∈. One of the equality and substitution axioms for a non-logical predicate in our predicate calculus with equality. It substitutes equal variables into the right-hand side of the ∈ binary predicate. Axiom scheme C13' in [Megill] p. 448 (p. 16 of the preprint). It is a special case of Axiom B8 (p. 75) of system S2 of [Tarski] p. 77. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 = 𝑦 → (𝑧 ∈ 𝑥 → 𝑧 ∈ 𝑦)) | ||
| Theorem | elequ1 2171 | An identity law for the non-logical predicate. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 = 𝑦 → (𝑥 ∈ 𝑧 ↔ 𝑦 ∈ 𝑧)) | ||
| Theorem | elequ2 2172 | An identity law for the non-logical predicate. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 = 𝑦 → (𝑧 ∈ 𝑥 ↔ 𝑧 ∈ 𝑦)) | ||
| Theorem | cleljust 2173* | When the class variables of set theory are replaced with setvar variables, this theorem of predicate calculus is the result. This theorem provides part of the justification for the consistency of that definition, which "overloads" the setvar variables in wel 2168 with the class variables in wcel 2167. (Contributed by NM, 28-Jan-2004.) |
| ⊢ (𝑥 ∈ 𝑦 ↔ ∃𝑧(𝑧 = 𝑥 ∧ 𝑧 ∈ 𝑦)) | ||
| Theorem | elsb1 2174* | Substitution for the first argument of the non-logical predicate in an atomic formula. See elsb2 2175 for substitution for the second argument. (Contributed by NM, 7-Nov-2006.) (Proof shortened by Andrew Salmon, 14-Jun-2011.) |
| ⊢ ([𝑦 / 𝑥]𝑥 ∈ 𝑧 ↔ 𝑦 ∈ 𝑧) | ||
| Theorem | elsb2 2175* | Substitution for the second argument of the non-logical predicate in an atomic formula. See elsb1 2174 for substitution for the first argument. (Contributed by Rodolfo Medina, 3-Apr-2010.) (Proof shortened by Andrew Salmon, 14-Jun-2011.) |
| ⊢ ([𝑦 / 𝑥]𝑧 ∈ 𝑥 ↔ 𝑧 ∈ 𝑦) | ||
| Theorem | dveel1 2176* | Quantifier introduction when one pair of variables is disjoint. (Contributed by NM, 2-Jan-2002.) |
| ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → (𝑦 ∈ 𝑧 → ∀𝑥 𝑦 ∈ 𝑧)) | ||
| Theorem | dveel2 2177* | Quantifier introduction when one pair of variables is disjoint. (Contributed by NM, 2-Jan-2002.) |
| ⊢ (¬ ∀𝑥 𝑥 = 𝑦 → (𝑧 ∈ 𝑦 → ∀𝑥 𝑧 ∈ 𝑦)) | ||
Set theory uses the formalism of propositional and predicate calculus to assert properties of arbitrary mathematical objects called "sets". A set can be an element of another set, and this relationship is indicated by the ∈ symbol. Starting with the simplest mathematical object, called the empty set, set theory builds up more and more complex structures whose existence follows from the axioms, eventually resulting in extremely complicated sets that we identify with the real numbers and other familiar mathematical objects. Here we develop set theory based on the Intuitionistic Zermelo-Fraenkel (IZF) system, mostly following the IZF axioms as laid out in [Crosilla]. Constructive Zermelo-Fraenkel (CZF), also described in Crosilla, is not as easy to formalize in Metamath because the statement of some of its axioms uses the notion of "bounded formula". Since Metamath has, purposefully, a very weak metalogic, that notion must be developed in the logic itself. This is similar to our treatment of substitution (df-sb 1777) and our definition of the nonfreeness predicate (df-nf 1475), whereas substitution and bound and free variables are ordinarily defined in the metalogic. The development of CZF has begun in BJ's mathbox, see wbd 15458. | ||
| Axiom | ax-ext 2178* |
Axiom of Extensionality. It states that two sets are identical if they
contain the same elements. Axiom 1 of [Crosilla] p. "Axioms of CZF and
IZF" (with unnecessary quantifiers removed).
Set theory can also be formulated with a single primitive predicate ∈ on top of traditional predicate calculus without equality. In that case the Axiom of Extensionality becomes (∀𝑤(𝑤 ∈ 𝑥 ↔ 𝑤 ∈ 𝑦) → (𝑥 ∈ 𝑧 → 𝑦 ∈ 𝑧)), and equality 𝑥 = 𝑦 is defined as ∀𝑤(𝑤 ∈ 𝑥 ↔ 𝑤 ∈ 𝑦). All of the usual axioms of equality then become theorems of set theory. See, for example, Axiom 1 of [TakeutiZaring] p. 8. To use the above "equality-free" version of Extensionality with Metamath's logical axioms, we would rewrite ax-8 1518 through ax-16 1828 with equality expanded according to the above definition. Some of those axioms could be proved from set theory and would be redundant. Not all of them are redundant, since our axioms of predicate calculus make essential use of equality for the proper substitution that is a primitive notion in traditional predicate calculus. A study of such an axiomatization would be an interesting project for someone exploring the foundations of logic. It is important to understand that strictly speaking, all of our set theory axioms are really schemes that represent an infinite number of actual axioms. This is inherent in the design of Metamath ("metavariable math"), which manipulates only metavariables. For example, the metavariable 𝑥 in ax-ext 2178 can represent any actual variable v1, v2, v3,... . Distinct variable restrictions ($d) prevent us from substituting say v1 for both 𝑥 and 𝑧. This is in contrast to typical textbook presentations that present actual axioms (except for axioms which involve wff metavariables). In practice, though, the theorems and proofs are essentially the same. The $d restrictions make each of the infinite axioms generated by the ax-ext 2178 scheme exactly logically equivalent to each other and in particular to the actual axiom of the textbook version. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (∀𝑧(𝑧 ∈ 𝑥 ↔ 𝑧 ∈ 𝑦) → 𝑥 = 𝑦) | ||
| Theorem | axext3 2179* | A generalization of the Axiom of Extensionality in which 𝑥 and 𝑦 need not be distinct. (Contributed by NM, 15-Sep-1993.) (Proof shortened by Andrew Salmon, 12-Aug-2011.) |
| ⊢ (∀𝑧(𝑧 ∈ 𝑥 ↔ 𝑧 ∈ 𝑦) → 𝑥 = 𝑦) | ||
| Theorem | axext4 2180* | A bidirectional version of Extensionality. Although this theorem "looks" like it is just a definition of equality, it requires the Axiom of Extensionality for its proof under our axiomatization. See the comments for ax-ext 2178. (Contributed by NM, 14-Nov-2008.) |
| ⊢ (𝑥 = 𝑦 ↔ ∀𝑧(𝑧 ∈ 𝑥 ↔ 𝑧 ∈ 𝑦)) | ||
| Theorem | bm1.1 2181* | Any set defined by a property is the only set defined by that property. Theorem 1.1 of [BellMachover] p. 462. (Contributed by NM, 30-Jun-1994.) |
| ⊢ Ⅎ𝑥𝜑 ⇒ ⊢ (∃𝑥∀𝑦(𝑦 ∈ 𝑥 ↔ 𝜑) → ∃!𝑥∀𝑦(𝑦 ∈ 𝑥 ↔ 𝜑)) | ||
| Syntax | cab 2182 | Introduce the class builder or class abstraction notation ("the class of sets 𝑥 such that 𝜑 is true"). Our class variables 𝐴, 𝐵, etc. range over class builders (sometimes implicitly). Note that a setvar variable can be expressed as a class builder per Theorem cvjust 2191, justifying the assignment of setvar variables to class variables via the use of cv 1363. |
| class {𝑥 ∣ 𝜑} | ||
| Definition | df-clab 2183 |
Define class abstraction notation (so-called by Quine), also called a
"class builder" in the literature. 𝑥 and 𝑦 need
not be distinct.
Definition 2.1 of [Quine] p. 16. Typically,
𝜑
will have 𝑦 as a
free variable, and "{𝑦 ∣ 𝜑} " is read "the class of
all sets 𝑦
such that 𝜑(𝑦) is true". We do not define
{𝑦 ∣
𝜑} in
isolation but only as part of an expression that extends or
"overloads"
the ∈ relationship.
This is our first use of the ∈ symbol to connect classes instead of sets. The syntax definition wcel 2167, which extends or "overloads" the wel 2168 definition connecting setvar variables, requires that both sides of ∈ be a class. In df-cleq 2189 and df-clel 2192, we introduce a new kind of variable (class variable) that can substituted with expressions such as {𝑦 ∣ 𝜑}. In the present definition, the 𝑥 on the left-hand side is a setvar variable. Syntax definition cv 1363 allows us to substitute a setvar variable 𝑥 for a class variable: all sets are classes by cvjust 2191 (but not necessarily vice-versa). For a full description of how classes are introduced and how to recover the primitive language, see the discussion in Quine (and under abeq2 2305 for a quick overview). Because class variables can be substituted with compound expressions and setvar variables cannot, it is often useful to convert a theorem containing a free setvar variable to a more general version with a class variable. This is called the "axiom of class comprehension" by [Levy] p. 338, who treats the theory of classes as an extralogical extension to our logic and set theory axioms. He calls the construction {𝑦 ∣ 𝜑} a "class term". For a general discussion of the theory of classes, see https://us.metamath.org/mpeuni/mmset.html#class 2305. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 ∈ {𝑦 ∣ 𝜑} ↔ [𝑥 / 𝑦]𝜑) | ||
| Theorem | abid 2184 | Simplification of class abstraction notation when the free and bound variables are identical. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 ∈ {𝑥 ∣ 𝜑} ↔ 𝜑) | ||
| Theorem | hbab1 2185* | Bound-variable hypothesis builder for a class abstraction. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑦 ∈ {𝑥 ∣ 𝜑} → ∀𝑥 𝑦 ∈ {𝑥 ∣ 𝜑}) | ||
| Theorem | nfsab1 2186* | Bound-variable hypothesis builder for a class abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ Ⅎ𝑥 𝑦 ∈ {𝑥 ∣ 𝜑} | ||
| Theorem | hbab 2187* | Bound-variable hypothesis builder for a class abstraction. (Contributed by NM, 1-Mar-1995.) |
| ⊢ (𝜑 → ∀𝑥𝜑) ⇒ ⊢ (𝑧 ∈ {𝑦 ∣ 𝜑} → ∀𝑥 𝑧 ∈ {𝑦 ∣ 𝜑}) | ||
| Theorem | nfsab 2188* | Bound-variable hypothesis builder for a class abstraction. (Contributed by Mario Carneiro, 11-Aug-2016.) |
| ⊢ Ⅎ𝑥𝜑 ⇒ ⊢ Ⅎ𝑥 𝑧 ∈ {𝑦 ∣ 𝜑} | ||
| Definition | df-cleq 2189* |
Define the equality connective between classes. Definition 2.7 of
[Quine] p. 18. Also Definition 4.5 of [TakeutiZaring] p. 13; Chapter 4
provides its justification and methods for eliminating it. Note that
its elimination will not necessarily result in a single wff in the
original language but possibly a "scheme" of wffs.
This is an example of a somewhat "risky" definition, meaning that it has a more complex than usual soundness justification (outside of Metamath), because it "overloads" or reuses the existing equality symbol rather than introducing a new symbol. This allows us to make statements that may not hold for the original symbol. For example, it permits us to deduce 𝑦 = 𝑧 ↔ ∀𝑥(𝑥 ∈ 𝑦 ↔ 𝑥 ∈ 𝑧), which is not a theorem of logic but rather presupposes the Axiom of Extensionality (see Theorem axext4 2180). We therefore include this axiom as a hypothesis, so that the use of Extensionality is properly indicated. We could avoid this complication by introducing a new symbol, say =2, in place of =. This would also have the advantage of making elimination of the definition straightforward, so that we could eliminate Extensionality as a hypothesis. We would then also have the advantage of being able to identify in various proofs exactly where Extensionality truly comes into play rather than just being an artifact of a definition. One of our theorems would then be 𝑥 =2 𝑦 ↔ 𝑥 = 𝑦 by invoking Extensionality. However, to conform to literature usage, we retain this overloaded definition. This also makes some proofs shorter and probably easier to read, without the constant switching between two kinds of equality. See also comments under df-clab 2183, df-clel 2192, and abeq2 2305. In the form of dfcleq 2190, this is called the "axiom of extensionality" by [Levy] p. 338, who treats the theory of classes as an extralogical extension to our logic and set theory axioms. For a general discussion of the theory of classes, see https://us.metamath.org/mpeuni/mmset.html#class 2190. (Contributed by NM, 15-Sep-1993.) |
| ⊢ (∀𝑥(𝑥 ∈ 𝑦 ↔ 𝑥 ∈ 𝑧) → 𝑦 = 𝑧) ⇒ ⊢ (𝐴 = 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) | ||
| Theorem | dfcleq 2190* | The same as df-cleq 2189 with the hypothesis removed using the Axiom of Extensionality ax-ext 2178. (Contributed by NM, 15-Sep-1993.) |
| ⊢ (𝐴 = 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) | ||
| Theorem | cvjust 2191* | Every set is a class. Proposition 4.9 of [TakeutiZaring] p. 13. This theorem shows that a setvar variable can be expressed as a class abstraction. This provides a motivation for the class syntax construction cv 1363, which allows us to substitute a setvar variable for a class variable. See also cab 2182 and df-clab 2183. Note that this is not a rigorous justification, because cv 1363 is used as part of the proof of this theorem, but a careful argument can be made outside of the formalism of Metamath, for example as is done in Chapter 4 of Takeuti and Zaring. See also the discussion under the definition of class in [Jech] p. 4 showing that "Every set can be considered to be a class." (Contributed by NM, 7-Nov-2006.) |
| ⊢ 𝑥 = {𝑦 ∣ 𝑦 ∈ 𝑥} | ||
| Definition | df-clel 2192* |
Define the membership connective between classes. Theorem 6.3 of
[Quine] p. 41, or Proposition 4.6 of [TakeutiZaring] p. 13, which we
adopt as a definition. See these references for its metalogical
justification. Note that like df-cleq 2189 it extends or "overloads" the
use of the existing membership symbol, but unlike df-cleq 2189 it does not
strengthen the set of valid wffs of logic when the class variables are
replaced with setvar variables (see cleljust 2173), so we don't include
any set theory axiom as a hypothesis. See also comments about the
syntax under df-clab 2183.
This is called the "axiom of membership" by [Levy] p. 338, who treats the theory of classes as an extralogical extension to our logic and set theory axioms. For a general discussion of the theory of classes, see https://us.metamath.org/mpeuni/mmset.html#class 2183. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝐴 ∈ 𝐵 ↔ ∃𝑥(𝑥 = 𝐴 ∧ 𝑥 ∈ 𝐵)) | ||
| Theorem | eqriv 2193* | Infer equality of classes from equivalence of membership. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵) ⇒ ⊢ 𝐴 = 𝐵 | ||
| Theorem | eqrdv 2194* | Deduce equality of classes from equivalence of membership. (Contributed by NM, 17-Mar-1996.) |
| ⊢ (𝜑 → (𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) ⇒ ⊢ (𝜑 → 𝐴 = 𝐵) | ||
| Theorem | eqrdav 2195* | Deduce equality of classes from an equivalence of membership that depends on the membership variable. (Contributed by NM, 7-Nov-2008.) |
| ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝑥 ∈ 𝐶) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐵) → 𝑥 ∈ 𝐶) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐶) → (𝑥 ∈ 𝐴 ↔ 𝑥 ∈ 𝐵)) ⇒ ⊢ (𝜑 → 𝐴 = 𝐵) | ||
| Theorem | eqid 2196 |
Law of identity (reflexivity of class equality). Theorem 6.4 of [Quine]
p. 41.
This law is thought to have originated with Aristotle (Metaphysics, Zeta, 17, 1041 a, 10-20). (Thanks to Stefan Allan and BJ for this information.) (Contributed by NM, 5-Aug-1993.) (Revised by BJ, 14-Oct-2017.) |
| ⊢ 𝐴 = 𝐴 | ||
| Theorem | eqidd 2197 | Class identity law with antecedent. (Contributed by NM, 21-Aug-2008.) |
| ⊢ (𝜑 → 𝐴 = 𝐴) | ||
| Theorem | eqcom 2198 | Commutative law for class equality. Theorem 6.5 of [Quine] p. 41. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝐴 = 𝐵 ↔ 𝐵 = 𝐴) | ||
| Theorem | eqcoms 2199 | Inference applying commutative law for class equality to an antecedent. (Contributed by NM, 5-Aug-1993.) |
| ⊢ (𝐴 = 𝐵 → 𝜑) ⇒ ⊢ (𝐵 = 𝐴 → 𝜑) | ||
| Theorem | eqcomi 2200 | Inference from commutative law for class equality. (Contributed by NM, 5-Aug-1993.) |
| ⊢ 𝐴 = 𝐵 ⇒ ⊢ 𝐵 = 𝐴 | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |