Theorem List for Intuitionistic Logic Explorer - 2901-3000 *Has distinct variable
group(s)
Type | Label | Description |
Statement |
|
Theorem | sbcth2 2901* |
A substitution into a theorem. (Contributed by NM, 1-Mar-2008.) (Proof
shortened by Mario Carneiro, 13-Oct-2016.)
|
⊢ (𝑥 ∈ 𝐵 → 𝜑) ⇒ ⊢ (𝐴 ∈ 𝐵 → [𝐴 / 𝑥]𝜑) |
|
Theorem | ra5 2902 |
Restricted quantifier version of Axiom 5 of [Mendelson] p. 69. This is
an axiom of a predicate calculus for a restricted domain. Compare the
unrestricted stdpc5 1516. (Contributed by NM, 16-Jan-2004.)
|
⊢ Ⅎ𝑥𝜑 ⇒ ⊢ (∀𝑥 ∈ 𝐴 (𝜑 → 𝜓) → (𝜑 → ∀𝑥 ∈ 𝐴 𝜓)) |
|
Theorem | rmo2ilem 2903* |
Condition implying restricted "at most one." (Contributed by Jim
Kingdon, 14-Jul-2018.)
|
⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃𝑦∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝑦) → ∃*𝑥 ∈ 𝐴 𝜑) |
|
Theorem | rmo2i 2904* |
Condition implying restricted "at most one." (Contributed by NM,
17-Jun-2017.)
|
⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃𝑦 ∈ 𝐴 ∀𝑥 ∈ 𝐴 (𝜑 → 𝑥 = 𝑦) → ∃*𝑥 ∈ 𝐴 𝜑) |
|
Theorem | rmo3 2905* |
Restricted "at most one" using explicit substitution. (Contributed
by
NM, 4-Nov-2012.) (Revised by NM, 16-Jun-2017.)
|
⊢ Ⅎ𝑦𝜑 ⇒ ⊢ (∃*𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐴 ((𝜑 ∧ [𝑦 / 𝑥]𝜑) → 𝑥 = 𝑦)) |
|
Theorem | rmob 2906* |
Consequence of "at most one", using implicit substitution.
(Contributed
by NM, 2-Jan-2015.) (Revised by NM, 16-Jun-2017.)
|
⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐶 → (𝜑 ↔ 𝜒)) ⇒ ⊢ ((∃*𝑥 ∈ 𝐴 𝜑 ∧ (𝐵 ∈ 𝐴 ∧ 𝜓)) → (𝐵 = 𝐶 ↔ (𝐶 ∈ 𝐴 ∧ 𝜒))) |
|
Theorem | rmoi 2907* |
Consequence of "at most one", using implicit substitution.
(Contributed
by NM, 4-Nov-2012.) (Revised by NM, 16-Jun-2017.)
|
⊢ (𝑥 = 𝐵 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝐶 → (𝜑 ↔ 𝜒)) ⇒ ⊢ ((∃*𝑥 ∈ 𝐴 𝜑 ∧ (𝐵 ∈ 𝐴 ∧ 𝜓) ∧ (𝐶 ∈ 𝐴 ∧ 𝜒)) → 𝐵 = 𝐶) |
|
2.1.10 Proper substitution of classes for sets
into classes
|
|
Syntax | csb 2908 |
Extend class notation to include the proper substitution of a class for a
set into another class.
|
class ⦋𝐴 / 𝑥⦌𝐵 |
|
Definition | df-csb 2909* |
Define the proper substitution of a class for a set into another class.
The underlined brackets distinguish it from the substitution into a wff,
wsbc 2815, to prevent ambiguity. Theorem sbcel1g 2925 shows an example of
how ambiguity could arise if we didn't use distinguished brackets.
Theorem sbccsbg 2934 recreates substitution into a wff from this
definition. (Contributed by NM, 10-Nov-2005.)
|
⊢ ⦋𝐴 / 𝑥⦌𝐵 = {𝑦 ∣ [𝐴 / 𝑥]𝑦 ∈ 𝐵} |
|
Theorem | csb2 2910* |
Alternate expression for the proper substitution into a class, without
referencing substitution into a wff. Note that 𝑥 can be free in
𝐵 but cannot occur in 𝐴.
(Contributed by NM, 2-Dec-2013.)
|
⊢ ⦋𝐴 / 𝑥⦌𝐵 = {𝑦 ∣ ∃𝑥(𝑥 = 𝐴 ∧ 𝑦 ∈ 𝐵)} |
|
Theorem | csbeq1 2911 |
Analog of dfsbcq 2817 for proper substitution into a class.
(Contributed
by NM, 10-Nov-2005.)
|
⊢ (𝐴 = 𝐵 → ⦋𝐴 / 𝑥⦌𝐶 = ⦋𝐵 / 𝑥⦌𝐶) |
|
Theorem | cbvcsb 2912 |
Change bound variables in a class substitution. Interestingly, this
does not require any bound variable conditions on 𝐴. (Contributed
by Jeff Hankins, 13-Sep-2009.) (Revised by Mario Carneiro,
11-Dec-2016.)
|
⊢ Ⅎ𝑦𝐶
& ⊢ Ⅎ𝑥𝐷
& ⊢ (𝑥 = 𝑦 → 𝐶 = 𝐷) ⇒ ⊢ ⦋𝐴 / 𝑥⦌𝐶 = ⦋𝐴 / 𝑦⦌𝐷 |
|
Theorem | cbvcsbv 2913* |
Change the bound variable of a proper substitution into a class using
implicit substitution. (Contributed by NM, 30-Sep-2008.) (Revised by
Mario Carneiro, 13-Oct-2016.)
|
⊢ (𝑥 = 𝑦 → 𝐵 = 𝐶) ⇒ ⊢ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑦⦌𝐶 |
|
Theorem | csbeq1d 2914 |
Equality deduction for proper substitution into a class. (Contributed
by NM, 3-Dec-2005.)
|
⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐶 = ⦋𝐵 / 𝑥⦌𝐶) |
|
Theorem | csbid 2915 |
Analog of sbid 1697 for proper substitution into a class.
(Contributed by
NM, 10-Nov-2005.)
|
⊢ ⦋𝑥 / 𝑥⦌𝐴 = 𝐴 |
|
Theorem | csbeq1a 2916 |
Equality theorem for proper substitution into a class. (Contributed by
NM, 10-Nov-2005.)
|
⊢ (𝑥 = 𝐴 → 𝐵 = ⦋𝐴 / 𝑥⦌𝐵) |
|
Theorem | csbco 2917* |
Composition law for chained substitutions into a class. (Contributed by
NM, 10-Nov-2005.)
|
⊢ ⦋𝐴 / 𝑦⦌⦋𝑦 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐵 |
|
Theorem | csbtt 2918 |
Substitution doesn't affect a constant 𝐵 (in which 𝑥 is not
free). (Contributed by Mario Carneiro, 14-Oct-2016.)
|
⊢ ((𝐴 ∈ 𝑉 ∧ Ⅎ𝑥𝐵) → ⦋𝐴 / 𝑥⦌𝐵 = 𝐵) |
|
Theorem | csbconstgf 2919 |
Substitution doesn't affect a constant 𝐵 (in which 𝑥 is not
free). (Contributed by NM, 10-Nov-2005.)
|
⊢ Ⅎ𝑥𝐵 ⇒ ⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐵) |
|
Theorem | csbconstg 2920* |
Substitution doesn't affect a constant 𝐵 (in which 𝑥 is not
free). csbconstgf 2919 with distinct variable requirement.
(Contributed by
Alan Sare, 22-Jul-2012.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐵) |
|
Theorem | sbcel12g 2921 |
Distribute proper substitution through a membership relation.
(Contributed by NM, 10-Nov-2005.) (Proof shortened by Andrew Salmon,
29-Jun-2011.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 ∈ 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 ∈ ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | sbceqg 2922 |
Distribute proper substitution through an equality relation.
(Contributed by NM, 10-Nov-2005.) (Proof shortened by Andrew Salmon,
29-Jun-2011.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | sbcnel12g 2923 |
Distribute proper substitution through negated membership. (Contributed
by Andrew Salmon, 18-Jun-2011.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 ∉ 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 ∉ ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | sbcne12g 2924 |
Distribute proper substitution through an inequality. (Contributed by
Andrew Salmon, 18-Jun-2011.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 ≠ 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 ≠ ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | sbcel1g 2925* |
Move proper substitution in and out of a membership relation. Note that
the scope of [𝐴 / 𝑥] is the wff 𝐵 ∈ 𝐶, whereas the scope
of ⦋𝐴 / 𝑥⦌ is the class 𝐵.
(Contributed by NM,
10-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 ∈ 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 ∈ 𝐶)) |
|
Theorem | sbceq1g 2926* |
Move proper substitution to first argument of an equality. (Contributed
by NM, 30-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ ⦋𝐴 / 𝑥⦌𝐵 = 𝐶)) |
|
Theorem | sbcel2g 2927* |
Move proper substitution in and out of a membership relation.
(Contributed by NM, 14-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 ∈ 𝐶 ↔ 𝐵 ∈ ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | sbceq2g 2928* |
Move proper substitution to second argument of an equality.
(Contributed by NM, 30-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝐵 = 𝐶 ↔ 𝐵 = ⦋𝐴 / 𝑥⦌𝐶)) |
|
Theorem | csbcomg 2929* |
Commutative law for double substitution into a class. (Contributed by
NM, 14-Nov-2005.)
|
⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐶 = ⦋𝐵 / 𝑦⦌⦋𝐴 / 𝑥⦌𝐶) |
|
Theorem | csbeq2d 2930 |
Formula-building deduction rule for class substitution. (Contributed by
NM, 22-Nov-2005.) (Revised by Mario Carneiro, 1-Sep-2015.)
|
⊢ Ⅎ𝑥𝜑
& ⊢ (𝜑 → 𝐵 = 𝐶) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶) |
|
Theorem | csbeq2dv 2931* |
Formula-building deduction rule for class substitution. (Contributed by
NM, 10-Nov-2005.) (Revised by Mario Carneiro, 1-Sep-2015.)
|
⊢ (𝜑 → 𝐵 = 𝐶) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶) |
|
Theorem | csbeq2i 2932 |
Formula-building inference rule for class substitution. (Contributed by
NM, 10-Nov-2005.) (Revised by Mario Carneiro, 1-Sep-2015.)
|
⊢ 𝐵 = 𝐶 ⇒ ⊢ ⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐶 |
|
Theorem | csbvarg 2933 |
The proper substitution of a class for setvar variable results in the
class (if the class exists). (Contributed by NM, 10-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌𝑥 = 𝐴) |
|
Theorem | sbccsbg 2934* |
Substitution into a wff expressed in terms of substitution into a class.
(Contributed by NM, 15-Aug-2007.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝑦 ∈ ⦋𝐴 / 𝑥⦌{𝑦 ∣ 𝜑})) |
|
Theorem | sbccsb2g 2935 |
Substitution into a wff expressed in using substitution into a class.
(Contributed by NM, 27-Nov-2005.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥]𝜑 ↔ 𝐴 ∈ ⦋𝐴 / 𝑥⦌{𝑥 ∣ 𝜑})) |
|
Theorem | nfcsb1d 2936 |
Bound-variable hypothesis builder for substitution into a class.
(Contributed by Mario Carneiro, 12-Oct-2016.)
|
⊢ (𝜑 → Ⅎ𝑥𝐴) ⇒ ⊢ (𝜑 → Ⅎ𝑥⦋𝐴 / 𝑥⦌𝐵) |
|
Theorem | nfcsb1 2937 |
Bound-variable hypothesis builder for substitution into a class.
(Contributed by Mario Carneiro, 12-Oct-2016.)
|
⊢ Ⅎ𝑥𝐴 ⇒ ⊢ Ⅎ𝑥⦋𝐴 / 𝑥⦌𝐵 |
|
Theorem | nfcsb1v 2938* |
Bound-variable hypothesis builder for substitution into a class.
(Contributed by NM, 17-Aug-2006.) (Revised by Mario Carneiro,
12-Oct-2016.)
|
⊢ Ⅎ𝑥⦋𝐴 / 𝑥⦌𝐵 |
|
Theorem | nfcsbd 2939 |
Deduction version of nfcsb 2940. (Contributed by NM, 21-Nov-2005.)
(Revised by Mario Carneiro, 12-Oct-2016.)
|
⊢ Ⅎ𝑦𝜑
& ⊢ (𝜑 → Ⅎ𝑥𝐴)
& ⊢ (𝜑 → Ⅎ𝑥𝐵) ⇒ ⊢ (𝜑 → Ⅎ𝑥⦋𝐴 / 𝑦⦌𝐵) |
|
Theorem | nfcsb 2940 |
Bound-variable hypothesis builder for substitution into a class.
(Contributed by Mario Carneiro, 12-Oct-2016.)
|
⊢ Ⅎ𝑥𝐴
& ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ Ⅎ𝑥⦋𝐴 / 𝑦⦌𝐵 |
|
Theorem | csbhypf 2941* |
Introduce an explicit substitution into an implicit substitution
hypothesis. See sbhypf 2648 for class substitution version. (Contributed
by NM, 19-Dec-2008.)
|
⊢ Ⅎ𝑥𝐴
& ⊢ Ⅎ𝑥𝐶
& ⊢ (𝑥 = 𝐴 → 𝐵 = 𝐶) ⇒ ⊢ (𝑦 = 𝐴 → ⦋𝑦 / 𝑥⦌𝐵 = 𝐶) |
|
Theorem | csbiebt 2942* |
Conversion of implicit substitution to explicit substitution into a
class. (Closed theorem version of csbiegf 2946.) (Contributed by NM,
11-Nov-2005.)
|
⊢ ((𝐴 ∈ 𝑉 ∧ Ⅎ𝑥𝐶) → (∀𝑥(𝑥 = 𝐴 → 𝐵 = 𝐶) ↔ ⦋𝐴 / 𝑥⦌𝐵 = 𝐶)) |
|
Theorem | csbiedf 2943* |
Conversion of implicit substitution to explicit substitution into a
class. (Contributed by Mario Carneiro, 13-Oct-2016.)
|
⊢ Ⅎ𝑥𝜑
& ⊢ (𝜑 → Ⅎ𝑥𝐶)
& ⊢ (𝜑 → 𝐴 ∈ 𝑉)
& ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → 𝐵 = 𝐶) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐶) |
|
Theorem | csbieb 2944* |
Bidirectional conversion between an implicit class substitution
hypothesis 𝑥 = 𝐴 → 𝐵 = 𝐶 and its explicit substitution
equivalent.
(Contributed by NM, 2-Mar-2008.)
|
⊢ 𝐴 ∈ V & ⊢
Ⅎ𝑥𝐶 ⇒ ⊢ (∀𝑥(𝑥 = 𝐴 → 𝐵 = 𝐶) ↔ ⦋𝐴 / 𝑥⦌𝐵 = 𝐶) |
|
Theorem | csbiebg 2945* |
Bidirectional conversion between an implicit class substitution
hypothesis 𝑥 = 𝐴 → 𝐵 = 𝐶 and its explicit substitution
equivalent.
(Contributed by NM, 24-Mar-2013.) (Revised by Mario Carneiro,
11-Dec-2016.)
|
⊢ Ⅎ𝑥𝐶 ⇒ ⊢ (𝐴 ∈ 𝑉 → (∀𝑥(𝑥 = 𝐴 → 𝐵 = 𝐶) ↔ ⦋𝐴 / 𝑥⦌𝐵 = 𝐶)) |
|
Theorem | csbiegf 2946* |
Conversion of implicit substitution to explicit substitution into a
class. (Contributed by NM, 11-Nov-2005.) (Revised by Mario Carneiro,
13-Oct-2016.)
|
⊢ (𝐴 ∈ 𝑉 → Ⅎ𝑥𝐶)
& ⊢ (𝑥 = 𝐴 → 𝐵 = 𝐶) ⇒ ⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐶) |
|
Theorem | csbief 2947* |
Conversion of implicit substitution to explicit substitution into a
class. (Contributed by NM, 26-Nov-2005.) (Revised by Mario Carneiro,
13-Oct-2016.)
|
⊢ 𝐴 ∈ V & ⊢
Ⅎ𝑥𝐶
& ⊢ (𝑥 = 𝐴 → 𝐵 = 𝐶) ⇒ ⊢ ⦋𝐴 / 𝑥⦌𝐵 = 𝐶 |
|
Theorem | csbied 2948* |
Conversion of implicit substitution to explicit substitution into a
class. (Contributed by Mario Carneiro, 2-Dec-2014.) (Revised by Mario
Carneiro, 13-Oct-2016.)
|
⊢ (𝜑 → 𝐴 ∈ 𝑉)
& ⊢ ((𝜑 ∧ 𝑥 = 𝐴) → 𝐵 = 𝐶) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐶) |
|
Theorem | csbied2 2949* |
Conversion of implicit substitution to explicit class substitution,
deduction form. (Contributed by Mario Carneiro, 2-Jan-2017.)
|
⊢ (𝜑 → 𝐴 ∈ 𝑉)
& ⊢ (𝜑 → 𝐴 = 𝐵)
& ⊢ ((𝜑 ∧ 𝑥 = 𝐵) → 𝐶 = 𝐷) ⇒ ⊢ (𝜑 → ⦋𝐴 / 𝑥⦌𝐶 = 𝐷) |
|
Theorem | csbie2t 2950* |
Conversion of implicit substitution to explicit substitution into a
class (closed form of csbie2 2951). (Contributed by NM, 3-Sep-2007.)
(Revised by Mario Carneiro, 13-Oct-2016.)
|
⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈
V ⇒ ⊢ (∀𝑥∀𝑦((𝑥 = 𝐴 ∧ 𝑦 = 𝐵) → 𝐶 = 𝐷) → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐶 = 𝐷) |
|
Theorem | csbie2 2951* |
Conversion of implicit substitution to explicit substitution into a
class. (Contributed by NM, 27-Aug-2007.)
|
⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V & ⊢ ((𝑥 = 𝐴 ∧ 𝑦 = 𝐵) → 𝐶 = 𝐷) ⇒ ⊢ ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐶 = 𝐷 |
|
Theorem | csbie2g 2952* |
Conversion of implicit substitution to explicit class substitution.
This version of sbcie 2848 avoids a disjointness condition on 𝑥 and
𝐴 by substituting twice. (Contributed
by Mario Carneiro,
11-Nov-2016.)
|
⊢ (𝑥 = 𝑦 → 𝐵 = 𝐶)
& ⊢ (𝑦 = 𝐴 → 𝐶 = 𝐷) ⇒ ⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌𝐵 = 𝐷) |
|
Theorem | sbcnestgf 2953 |
Nest the composition of two substitutions. (Contributed by Mario
Carneiro, 11-Nov-2016.)
|
⊢ ((𝐴 ∈ 𝑉 ∧ ∀𝑦Ⅎ𝑥𝜑) → ([𝐴 / 𝑥][𝐵 / 𝑦]𝜑 ↔ [⦋𝐴 / 𝑥⦌𝐵 / 𝑦]𝜑)) |
|
Theorem | csbnestgf 2954 |
Nest the composition of two substitutions. (Contributed by NM,
23-Nov-2005.) (Proof shortened by Mario Carneiro, 10-Nov-2016.)
|
⊢ ((𝐴 ∈ 𝑉 ∧ ∀𝑦Ⅎ𝑥𝐶) → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐶 = ⦋⦋𝐴 / 𝑥⦌𝐵 / 𝑦⦌𝐶) |
|
Theorem | sbcnestg 2955* |
Nest the composition of two substitutions. (Contributed by NM,
27-Nov-2005.) (Proof shortened by Mario Carneiro, 11-Nov-2016.)
|
⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥][𝐵 / 𝑦]𝜑 ↔ [⦋𝐴 / 𝑥⦌𝐵 / 𝑦]𝜑)) |
|
Theorem | csbnestg 2956* |
Nest the composition of two substitutions. (Contributed by NM,
23-Nov-2005.) (Proof shortened by Mario Carneiro, 10-Nov-2016.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐶 = ⦋⦋𝐴 / 𝑥⦌𝐵 / 𝑦⦌𝐶) |
|
Theorem | csbnest1g 2957 |
Nest the composition of two substitutions. (Contributed by NM,
23-May-2006.) (Proof shortened by Mario Carneiro, 11-Nov-2016.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑥⦌𝐶 = ⦋⦋𝐴 / 𝑥⦌𝐵 / 𝑥⦌𝐶) |
|
Theorem | csbidmg 2958* |
Idempotent law for class substitutions. (Contributed by NM,
1-Mar-2008.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌⦋𝐴 / 𝑥⦌𝐵 = ⦋𝐴 / 𝑥⦌𝐵) |
|
Theorem | sbcco3g 2959* |
Composition of two substitutions. (Contributed by NM, 27-Nov-2005.)
(Revised by Mario Carneiro, 11-Nov-2016.)
|
⊢ (𝑥 = 𝐴 → 𝐵 = 𝐶) ⇒ ⊢ (𝐴 ∈ 𝑉 → ([𝐴 / 𝑥][𝐵 / 𝑦]𝜑 ↔ [𝐶 / 𝑦]𝜑)) |
|
Theorem | csbco3g 2960* |
Composition of two class substitutions. (Contributed by NM,
27-Nov-2005.) (Revised by Mario Carneiro, 11-Nov-2016.)
|
⊢ (𝑥 = 𝐴 → 𝐵 = 𝐶) ⇒ ⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌⦋𝐵 / 𝑦⦌𝐷 = ⦋𝐶 / 𝑦⦌𝐷) |
|
Theorem | rspcsbela 2961* |
Special case related to rspsbc 2896. (Contributed by NM, 10-Dec-2005.)
(Proof shortened by Eric Schmidt, 17-Jan-2007.)
|
⊢ ((𝐴 ∈ 𝐵 ∧ ∀𝑥 ∈ 𝐵 𝐶 ∈ 𝐷) → ⦋𝐴 / 𝑥⦌𝐶 ∈ 𝐷) |
|
Theorem | sbnfc2 2962* |
Two ways of expressing "𝑥 is (effectively) not free in 𝐴."
(Contributed by Mario Carneiro, 14-Oct-2016.)
|
⊢ (Ⅎ𝑥𝐴 ↔ ∀𝑦∀𝑧⦋𝑦 / 𝑥⦌𝐴 = ⦋𝑧 / 𝑥⦌𝐴) |
|
Theorem | csbabg 2963* |
Move substitution into a class abstraction. (Contributed by NM,
13-Dec-2005.) (Proof shortened by Andrew Salmon, 9-Jul-2011.)
|
⊢ (𝐴 ∈ 𝑉 → ⦋𝐴 / 𝑥⦌{𝑦 ∣ 𝜑} = {𝑦 ∣ [𝐴 / 𝑥]𝜑}) |
|
Theorem | cbvralcsf 2964 |
A more general version of cbvralf 2571 that doesn't require 𝐴 and 𝐵
to be distinct from 𝑥 or 𝑦. Changes bound
variables using
implicit substitution. (Contributed by Andrew Salmon, 13-Jul-2011.)
|
⊢ Ⅎ𝑦𝐴
& ⊢ Ⅎ𝑥𝐵
& ⊢ Ⅎ𝑦𝜑
& ⊢ Ⅎ𝑥𝜓
& ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵)
& ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∀𝑥 ∈ 𝐴 𝜑 ↔ ∀𝑦 ∈ 𝐵 𝜓) |
|
Theorem | cbvrexcsf 2965 |
A more general version of cbvrexf 2572 that has no distinct variable
restrictions. Changes bound variables using implicit substitution.
(Contributed by Andrew Salmon, 13-Jul-2011.) (Proof shortened by Mario
Carneiro, 7-Dec-2014.)
|
⊢ Ⅎ𝑦𝐴
& ⊢ Ⅎ𝑥𝐵
& ⊢ Ⅎ𝑦𝜑
& ⊢ Ⅎ𝑥𝜓
& ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵)
& ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃𝑥 ∈ 𝐴 𝜑 ↔ ∃𝑦 ∈ 𝐵 𝜓) |
|
Theorem | cbvreucsf 2966 |
A more general version of cbvreuv 2579 that has no distinct variable
rextrictions. Changes bound variables using implicit substitution.
(Contributed by Andrew Salmon, 13-Jul-2011.)
|
⊢ Ⅎ𝑦𝐴
& ⊢ Ⅎ𝑥𝐵
& ⊢ Ⅎ𝑦𝜑
& ⊢ Ⅎ𝑥𝜓
& ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵)
& ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ (∃!𝑥 ∈ 𝐴 𝜑 ↔ ∃!𝑦 ∈ 𝐵 𝜓) |
|
Theorem | cbvrabcsf 2967 |
A more general version of cbvrab 2599 with no distinct variable
restrictions. (Contributed by Andrew Salmon, 13-Jul-2011.)
|
⊢ Ⅎ𝑦𝐴
& ⊢ Ⅎ𝑥𝐵
& ⊢ Ⅎ𝑦𝜑
& ⊢ Ⅎ𝑥𝜓
& ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵)
& ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) ⇒ ⊢ {𝑥 ∈ 𝐴 ∣ 𝜑} = {𝑦 ∈ 𝐵 ∣ 𝜓} |
|
Theorem | cbvralv2 2968* |
Rule used to change the bound variable in a restricted universal
quantifier with implicit substitution which also changes the quantifier
domain. (Contributed by David Moews, 1-May-2017.)
|
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ (∀𝑥 ∈ 𝐴 𝜓 ↔ ∀𝑦 ∈ 𝐵 𝜒) |
|
Theorem | cbvrexv2 2969* |
Rule used to change the bound variable in a restricted existential
quantifier with implicit substitution which also changes the quantifier
domain. (Contributed by David Moews, 1-May-2017.)
|
⊢ (𝑥 = 𝑦 → (𝜓 ↔ 𝜒)) & ⊢ (𝑥 = 𝑦 → 𝐴 = 𝐵) ⇒ ⊢ (∃𝑥 ∈ 𝐴 𝜓 ↔ ∃𝑦 ∈ 𝐵 𝜒) |
|
2.1.11 Define basic set operations and
relations
|
|
Syntax | cdif 2970 |
Extend class notation to include class difference (read: "𝐴 minus
𝐵").
|
class (𝐴 ∖ 𝐵) |
|
Syntax | cun 2971 |
Extend class notation to include union of two classes (read: "𝐴
union 𝐵").
|
class (𝐴 ∪ 𝐵) |
|
Syntax | cin 2972 |
Extend class notation to include the intersection of two classes (read:
"𝐴 intersect 𝐵").
|
class (𝐴 ∩ 𝐵) |
|
Syntax | wss 2973 |
Extend wff notation to include the subclass relation. This is
read "𝐴 is a subclass of 𝐵 "
or "𝐵 includes 𝐴." When
𝐴 exists as a set, it is also read
"𝐴 is a subset of 𝐵."
|
wff 𝐴 ⊆ 𝐵 |
|
Theorem | difjust 2974* |
Soundness justification theorem for df-dif 2975. (Contributed by Rodolfo
Medina, 27-Apr-2010.) (Proof shortened by Andrew Salmon,
9-Jul-2011.)
|
⊢ {𝑥 ∣ (𝑥 ∈ 𝐴 ∧ ¬ 𝑥 ∈ 𝐵)} = {𝑦 ∣ (𝑦 ∈ 𝐴 ∧ ¬ 𝑦 ∈ 𝐵)} |
|
Definition | df-dif 2975* |
Define class difference, also called relative complement. Definition
5.12 of [TakeutiZaring] p. 20.
Contrast this operation with union
(𝐴
∪ 𝐵) (df-un 2977) and intersection (𝐴 ∩ 𝐵) (df-in 2979).
Several notations are used in the literature; we chose the ∖
convention used in Definition 5.3 of [Eisenberg] p. 67 instead of the
more common minus sign to reserve the latter for later use in, e.g.,
arithmetic. We will use the terminology "𝐴 excludes 𝐵 "
to
mean 𝐴 ∖ 𝐵. We will use "𝐵 is
removed from 𝐴 " to mean
𝐴
∖ {𝐵} i.e. the
removal of an element or equivalently the
exclusion of a singleton. (Contributed by NM, 29-Apr-1994.)
|
⊢ (𝐴 ∖ 𝐵) = {𝑥 ∣ (𝑥 ∈ 𝐴 ∧ ¬ 𝑥 ∈ 𝐵)} |
|
Theorem | unjust 2976* |
Soundness justification theorem for df-un 2977. (Contributed by Rodolfo
Medina, 28-Apr-2010.) (Proof shortened by Andrew Salmon,
9-Jul-2011.)
|
⊢ {𝑥 ∣ (𝑥 ∈ 𝐴 ∨ 𝑥 ∈ 𝐵)} = {𝑦 ∣ (𝑦 ∈ 𝐴 ∨ 𝑦 ∈ 𝐵)} |
|
Definition | df-un 2977* |
Define the union of two classes. Definition 5.6 of [TakeutiZaring]
p. 16. Contrast this operation with difference (𝐴 ∖ 𝐵)
(df-dif 2975) and intersection (𝐴 ∩ 𝐵) (df-in 2979). (Contributed
by NM, 23-Aug-1993.)
|
⊢ (𝐴 ∪ 𝐵) = {𝑥 ∣ (𝑥 ∈ 𝐴 ∨ 𝑥 ∈ 𝐵)} |
|
Theorem | injust 2978* |
Soundness justification theorem for df-in 2979. (Contributed by Rodolfo
Medina, 28-Apr-2010.) (Proof shortened by Andrew Salmon,
9-Jul-2011.)
|
⊢ {𝑥 ∣ (𝑥 ∈ 𝐴 ∧ 𝑥 ∈ 𝐵)} = {𝑦 ∣ (𝑦 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵)} |
|
Definition | df-in 2979* |
Define the intersection of two classes. Definition 5.6 of
[TakeutiZaring] p. 16. Contrast
this operation with union
(𝐴
∪ 𝐵) (df-un 2977) and difference (𝐴 ∖ 𝐵) (df-dif 2975).
(Contributed by NM, 29-Apr-1994.)
|
⊢ (𝐴 ∩ 𝐵) = {𝑥 ∣ (𝑥 ∈ 𝐴 ∧ 𝑥 ∈ 𝐵)} |
|
Theorem | dfin5 2980* |
Alternate definition for the intersection of two classes. (Contributed
by NM, 6-Jul-2005.)
|
⊢ (𝐴 ∩ 𝐵) = {𝑥 ∈ 𝐴 ∣ 𝑥 ∈ 𝐵} |
|
Theorem | dfdif2 2981* |
Alternate definition of class difference. (Contributed by NM,
25-Mar-2004.)
|
⊢ (𝐴 ∖ 𝐵) = {𝑥 ∈ 𝐴 ∣ ¬ 𝑥 ∈ 𝐵} |
|
Theorem | eldif 2982 |
Expansion of membership in a class difference. (Contributed by NM,
29-Apr-1994.)
|
⊢ (𝐴 ∈ (𝐵 ∖ 𝐶) ↔ (𝐴 ∈ 𝐵 ∧ ¬ 𝐴 ∈ 𝐶)) |
|
Theorem | eldifd 2983 |
If a class is in one class and not another, it is also in their
difference. One-way deduction form of eldif 2982. (Contributed by David
Moews, 1-May-2017.)
|
⊢ (𝜑 → 𝐴 ∈ 𝐵)
& ⊢ (𝜑 → ¬ 𝐴 ∈ 𝐶) ⇒ ⊢ (𝜑 → 𝐴 ∈ (𝐵 ∖ 𝐶)) |
|
Theorem | eldifad 2984 |
If a class is in the difference of two classes, it is also in the
minuend. One-way deduction form of eldif 2982. (Contributed by David
Moews, 1-May-2017.)
|
⊢ (𝜑 → 𝐴 ∈ (𝐵 ∖ 𝐶)) ⇒ ⊢ (𝜑 → 𝐴 ∈ 𝐵) |
|
Theorem | eldifbd 2985 |
If a class is in the difference of two classes, it is not in the
subtrahend. One-way deduction form of eldif 2982. (Contributed by David
Moews, 1-May-2017.)
|
⊢ (𝜑 → 𝐴 ∈ (𝐵 ∖ 𝐶)) ⇒ ⊢ (𝜑 → ¬ 𝐴 ∈ 𝐶) |
|
2.1.12 Subclasses and subsets
|
|
Definition | df-ss 2986 |
Define the subclass relationship. Exercise 9 of [TakeutiZaring] p. 18.
Note that 𝐴 ⊆ 𝐴 (proved in ssid 3018). For a more traditional
definition, but requiring a dummy variable, see dfss2 2988. Other possible
definitions are given by dfss3 2989, ssequn1 3142, ssequn2 3145, and sseqin2 3185.
(Contributed by NM, 27-Apr-1994.)
|
⊢ (𝐴 ⊆ 𝐵 ↔ (𝐴 ∩ 𝐵) = 𝐴) |
|
Theorem | dfss 2987 |
Variant of subclass definition df-ss 2986. (Contributed by NM,
3-Sep-2004.)
|
⊢ (𝐴 ⊆ 𝐵 ↔ 𝐴 = (𝐴 ∩ 𝐵)) |
|
Theorem | dfss2 2988* |
Alternate definition of the subclass relationship between two classes.
Definition 5.9 of [TakeutiZaring]
p. 17. (Contributed by NM,
8-Jan-2002.)
|
⊢ (𝐴 ⊆ 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐵)) |
|
Theorem | dfss3 2989* |
Alternate definition of subclass relationship. (Contributed by NM,
14-Oct-1999.)
|
⊢ (𝐴 ⊆ 𝐵 ↔ ∀𝑥 ∈ 𝐴 𝑥 ∈ 𝐵) |
|
Theorem | dfss2f 2990 |
Equivalence for subclass relation, using bound-variable hypotheses
instead of distinct variable conditions. (Contributed by NM,
3-Jul-1994.) (Revised by Andrew Salmon, 27-Aug-2011.)
|
⊢ Ⅎ𝑥𝐴
& ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ (𝐴 ⊆ 𝐵 ↔ ∀𝑥(𝑥 ∈ 𝐴 → 𝑥 ∈ 𝐵)) |
|
Theorem | dfss3f 2991 |
Equivalence for subclass relation, using bound-variable hypotheses
instead of distinct variable conditions. (Contributed by NM,
20-Mar-2004.)
|
⊢ Ⅎ𝑥𝐴
& ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ (𝐴 ⊆ 𝐵 ↔ ∀𝑥 ∈ 𝐴 𝑥 ∈ 𝐵) |
|
Theorem | nfss 2992 |
If 𝑥 is not free in 𝐴 and 𝐵, it is
not free in 𝐴 ⊆ 𝐵.
(Contributed by NM, 27-Dec-1996.)
|
⊢ Ⅎ𝑥𝐴
& ⊢ Ⅎ𝑥𝐵 ⇒ ⊢ Ⅎ𝑥 𝐴 ⊆ 𝐵 |
|
Theorem | ssel 2993 |
Membership relationships follow from a subclass relationship.
(Contributed by NM, 5-Aug-1993.)
|
⊢ (𝐴 ⊆ 𝐵 → (𝐶 ∈ 𝐴 → 𝐶 ∈ 𝐵)) |
|
Theorem | ssel2 2994 |
Membership relationships follow from a subclass relationship.
(Contributed by NM, 7-Jun-2004.)
|
⊢ ((𝐴 ⊆ 𝐵 ∧ 𝐶 ∈ 𝐴) → 𝐶 ∈ 𝐵) |
|
Theorem | sseli 2995 |
Membership inference from subclass relationship. (Contributed by NM,
5-Aug-1993.)
|
⊢ 𝐴 ⊆ 𝐵 ⇒ ⊢ (𝐶 ∈ 𝐴 → 𝐶 ∈ 𝐵) |
|
Theorem | sselii 2996 |
Membership inference from subclass relationship. (Contributed by NM,
31-May-1999.)
|
⊢ 𝐴 ⊆ 𝐵
& ⊢ 𝐶 ∈ 𝐴 ⇒ ⊢ 𝐶 ∈ 𝐵 |
|
Theorem | sseldi 2997 |
Membership inference from subclass relationship. (Contributed by NM,
25-Jun-2014.)
|
⊢ 𝐴 ⊆ 𝐵
& ⊢ (𝜑 → 𝐶 ∈ 𝐴) ⇒ ⊢ (𝜑 → 𝐶 ∈ 𝐵) |
|
Theorem | sseld 2998 |
Membership deduction from subclass relationship. (Contributed by NM,
15-Nov-1995.)
|
⊢ (𝜑 → 𝐴 ⊆ 𝐵) ⇒ ⊢ (𝜑 → (𝐶 ∈ 𝐴 → 𝐶 ∈ 𝐵)) |
|
Theorem | sselda 2999 |
Membership deduction from subclass relationship. (Contributed by NM,
26-Jun-2014.)
|
⊢ (𝜑 → 𝐴 ⊆ 𝐵) ⇒ ⊢ ((𝜑 ∧ 𝐶 ∈ 𝐴) → 𝐶 ∈ 𝐵) |
|
Theorem | sseldd 3000 |
Membership inference from subclass relationship. (Contributed by NM,
14-Dec-2004.)
|
⊢ (𝜑 → 𝐴 ⊆ 𝐵)
& ⊢ (𝜑 → 𝐶 ∈ 𝐴) ⇒ ⊢ (𝜑 → 𝐶 ∈ 𝐵) |