| Intuitionistic Logic Explorer Theorem List (p. 134 of 172) | < Previous Next > | |
| Browser slow? Try the
Unicode version. |
||
|
Mirrors > Metamath Home Page > ILE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
||
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | ennnfonelemss 13301* |
Lemma for ennnfone 13316. We only add elements to |
| Theorem | ennnfoneleminc 13302* |
Lemma for ennnfone 13316. We only add elements to |
| Theorem | ennnfonelemkh 13303* | Lemma for ennnfone 13316. Because we add zero or one entries for each new index, the length of each sequence is no greater than its index. (Contributed by Jim Kingdon, 19-Jul-2023.) |
| Theorem | ennnfonelemhf1o 13304* |
Lemma for ennnfone 13316. Each of the functions in |
| Theorem | ennnfonelemex 13305* |
Lemma for ennnfone 13316. Extending the sequence |
| Theorem | ennnfonelemhom 13306* |
Lemma for ennnfone 13316. The sequences in |
| Theorem | ennnfonelemrnh 13307* | Lemma for ennnfone 13316. A consequence of ennnfonelemss 13301. (Contributed by Jim Kingdon, 16-Jul-2023.) |
| Theorem | ennnfonelemfun 13308* |
Lemma for ennnfone 13316. |
| Theorem | ennnfonelemf1 13309* |
Lemma for ennnfone 13316. |
| Theorem | ennnfonelemrn 13310* |
Lemma for ennnfone 13316. |
| Theorem | ennnfonelemdm 13311* |
Lemma for ennnfone 13316. The function |
| Theorem | ennnfonelemen 13312* | Lemma for ennnfone 13316. The result. (Contributed by Jim Kingdon, 16-Jul-2023.) |
| Theorem | ennnfonelemnn0 13313* |
Lemma for ennnfone 13316. A version of ennnfonelemen 13312 expressed in
terms of |
| Theorem | ennnfonelemr 13314* | Lemma for ennnfone 13316. The interesting direction, expressed in deduction form. (Contributed by Jim Kingdon, 27-Oct-2022.) |
| Theorem | ennnfonelemim 13315* | Lemma for ennnfone 13316. The trivial direction. (Contributed by Jim Kingdon, 27-Oct-2022.) |
| Theorem | ennnfone 13316* |
A condition for a set being countably infinite. Corollary 8.1.13 of
[AczelRathjen], p. 73. Roughly
speaking, the condition says that |
| Theorem | exmidunben 13317* |
If any unbounded set of positive integers is equinumerous to |
| Theorem | ctinfomlemom 13318* |
Lemma for ctinfom 13319. Converting between |
| Theorem | ctinfom 13319* |
A condition for a set being countably infinite. Restates ennnfone 13316 in
terms of |
| Theorem | inffinp1 13320* | An infinite set contains an element not contained in a given finite subset. (Contributed by Jim Kingdon, 7-Aug-2023.) |
| Theorem | ctinf 13321* | A set is countably infinite if and only if it has decidable equality, is countable, and is infinite. (Contributed by Jim Kingdon, 7-Aug-2023.) |
| Theorem | qnnen 13322 | The rational numbers are countably infinite. Corollary 8.1.23 of [AczelRathjen], p. 75. This is Metamath 100 proof #3. (Contributed by Jim Kingdon, 11-Aug-2023.) |
| Theorem | enctlem 13323* | Lemma for enct 13324. One direction of the biconditional. (Contributed by Jim Kingdon, 23-Dec-2023.) |
| Theorem | enct 13324* | Countability is invariant relative to equinumerosity. (Contributed by Jim Kingdon, 23-Dec-2023.) |
| Theorem | ctiunctlemu1st 13325* | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunctlemu2nd 13326* | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunctlemuom 13327 | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunctlemudc 13328* | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunctlemf 13329* | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunctlemfo 13330* | Lemma for ctiunct 13331. (Contributed by Jim Kingdon, 28-Oct-2023.) |
| Theorem | ctiunct 13331* |
A sequence of enumerations gives an enumeration of the union. We refer
to "sequence of enumerations" rather than "countably many
countable
sets" because the hypothesis provides more than countability for
each
For "countably many countable sets" the key hypothesis would
be
Compare with the case of two sets instead of countably many, as seen at unct 13333, which says that the union of two countable sets is countable .
The proof proceeds by mapping a natural number to a pair of natural
numbers (by xpomen 13286) and using the first number to map to an
element
(Contributed by Jim Kingdon, 31-Oct-2023.) |
| Theorem | ctiunctal 13332* |
Variation of ctiunct 13331 which allows |
| Theorem | unct 13333* | The union of two countable sets is countable. Corollary 8.1.20 of [AczelRathjen], p. 75. (Contributed by Jim Kingdon, 1-Nov-2023.) |
| Theorem | omctfn 13334* | Using countable choice to find a sequence of enumerations for a collection of countable sets. Lemma 8.1.27 of [AczelRathjen], p. 77. (Contributed by Jim Kingdon, 19-Apr-2024.) |
| Theorem | omiunct 13335* | The union of a countably infinite collection of countable sets is countable. Theorem 8.1.28 of [AczelRathjen], p. 78. Compare with ctiunct 13331 which has a stronger hypothesis but does not require countable choice. (Contributed by Jim Kingdon, 5-May-2024.) |
| Theorem | ssomct 13336* |
A decidable subset of |
| Theorem | ssnnctlemct 13337* | Lemma for ssnnct 13338. The result. (Contributed by Jim Kingdon, 29-Sep-2024.) |
| Theorem | ssnnct 13338* |
A decidable subset of |
| Theorem | nninfdclemcl 13339* | Lemma for nninfdc 13344. (Contributed by Jim Kingdon, 25-Sep-2024.) |
| Theorem | nninfdclemf 13340* |
Lemma for nninfdc 13344. A function from the natural numbers into
|
| Theorem | nninfdclemp1 13341* |
Lemma for nninfdc 13344. Each element of the sequence |
| Theorem | nninfdclemlt 13342* | Lemma for nninfdc 13344. The function from nninfdclemf 13340 is strictly monotonic. (Contributed by Jim Kingdon, 24-Sep-2024.) |
| Theorem | nninfdclemf1 13343* | Lemma for nninfdc 13344. The function from nninfdclemf 13340 is one-to-one. (Contributed by Jim Kingdon, 23-Sep-2024.) |
| Theorem | nninfdc 13344* | An unbounded decidable set of positive integers is infinite. (Contributed by Jim Kingdon, 23-Sep-2024.) |
| Theorem | unbendc 13345* | An unbounded decidable set of positive integers is infinite. (Contributed by NM, 5-May-2005.) (Revised by Jim Kingdon, 30-Sep-2024.) |
| Theorem | prminf 13346 | There are an infinite number of primes. Theorem 1.7 in [ApostolNT] p. 16. (Contributed by Paul Chapman, 28-Nov-2012.) |
| Theorem | infpn2 13347* |
There exist infinitely many prime numbers: the set of all primes |
An "extensible structure" (or "structure" in short, at least in this section) is used to define a specific group, ring, poset, and so on. An extensible structure can contain many components. For example, a group will have at least two components (base set and operation), although it can be further specialized by adding other components such as a multiplicative operation for rings (and still remain a group per our definition). Thus, every ring is also a group. This extensible structure approach allows theorems from more general structures (such as groups) to be reused for more specialized structures (such as rings) without having to reprove anything. Structures are common in mathematics, but in informal (natural language) proofs the details are assumed in ways that we must make explicit.
An extensible structure is implemented as a function (a set of ordered pairs)
on a finite (and not necessarily sequential) subset of
There are many other possible ways to handle structures. We chose this
extensible structure approach because this approach (1) results in simpler
notation than other approaches we are aware of, and (2) is easier to do
proofs with. We cannot use an approach that uses "hidden"
arguments;
Metamath does not support hidden arguments, and in any case we want nothing
hidden. It would be possible to use a categorical approach (e.g., something
vaguely similar to Lean's mathlib). However, instances (the chain of proofs
that an
To create a substructure of a given extensible structure, you can simply use
the multifunction restriction operator for extensible structures
↾s as
defined in df-iress 13360. This can be used to turn statements about
rings into
statements about subrings, modules into submodules, etc. This definition
knows nothing about individual structures and merely truncates the Extensible structures only work well when they represent concrete categories, where there is a "base set", morphisms are functions, and subobjects are subsets with induced operations. In short, they primarily work well for "sets with (some) extra structure". Extensible structures may not suffice for more complicated situations. For example, in manifolds, ↾s would not work. That said, extensible structures are sufficient for many of the structures that set.mm currently considers, and offer a good compromise for a goal-oriented formalization. | ||
| Syntax | cstr 13348 |
Extend class notation with the class of structures with components
numbered below |
| Syntax | cnx 13349 | Extend class notation with the structure component index extractor. |
| Syntax | csts 13350 | Set components of a structure. |
| Syntax | cslot 13351 | Extend class notation with the slot function. |
| Syntax | cbs 13352 | Extend class notation with the class of all base set extractors. |
| Syntax | cress 13353 | Extend class notation with the extensible structure builder restriction operator. |
| Definition | df-struct 13354* |
Define a structure with components in
As mentioned in the section header, an "extensible structure should
be
implemented as a function (a set of ordered pairs)". The current
definition, however, is less restrictive: it allows for classes which
contain the empty set
Allowing an extensible structure to contain the empty set ensures that
expressions like |
| Definition | df-ndx 13355 |
Define the structure component index extractor. See Theorem ndxarg 13375 to
understand its purpose. The restriction to |
| Definition | df-slot 13356* |
Define the slot extractor for extensible structures. The class
Slot
Note that Slot
The special "structure"
The class Slot cannot be defined as
|
| Theorem | sloteq 13357 |
Equality theorem for the Slot construction. The converse holds if
|
| Definition | df-base 13358 | Define the base set (also called underlying set, ground set, carrier set, or carrier) extractor for extensible structures. (Contributed by NM, 4-Sep-2011.) (Revised by Mario Carneiro, 14-Aug-2015.) |
| Definition | df-sets 13359* | Set a component of an extensible structure. This function is useful for taking an existing structure and "overriding" one of its components. For example, df-iress 13360 adjusts the base set to match its second argument, which has the effect of making subgroups, subspaces, subrings etc. from the original structures. (Contributed by Mario Carneiro, 1-Dec-2014.) |
| Definition | df-iress 13360* |
Define a multifunction restriction operator for extensible structures,
which can be used to turn statements about rings into statements about
subrings, modules into submodules, etc. This definition knows nothing
about individual structures and merely truncates the (Credit for this operator, as well as the 2023 modification for iset.mm, goes to Mario Carneiro.) (Contributed by Stefan O'Rear, 29-Nov-2014.) (Revised by Jim Kingdon, 7-Oct-2023.) |
| Theorem | brstruct 13361 | The structure relation is a relation. (Contributed by Mario Carneiro, 29-Aug-2015.) |
| Theorem | isstruct2im 13362 |
The property of being a structure with components in
|
| Theorem | isstruct2r 13363 |
The property of being a structure with components in
|
| Theorem | structex 13364 | A structure is a set. (Contributed by AV, 10-Nov-2021.) |
| Theorem | structn0fun 13365 | A structure without the empty set is a function. (Contributed by AV, 13-Nov-2021.) |
| Theorem | isstructim 13366 |
The property of being a structure with components in |
| Theorem | isstructr 13367 |
The property of being a structure with components in |
| Theorem | structcnvcnv 13368 | Two ways to express the relational part of a structure. (Contributed by Mario Carneiro, 29-Aug-2015.) |
| Theorem | structfung 13369 | The converse of the converse of a structure is a function. Closed form of structfun 13370. (Contributed by AV, 12-Nov-2021.) |
| Theorem | structfun 13370 | Convert between two kinds of structure closure. (Contributed by Mario Carneiro, 29-Aug-2015.) (Proof shortened by AV, 12-Nov-2021.) |
| Theorem | structfn 13371 | Convert between two kinds of structure closure. (Contributed by Mario Carneiro, 29-Aug-2015.) |
| Theorem | strnfvnd 13372 | Deduction version of strnfvn 13373. (Contributed by Mario Carneiro, 15-Nov-2014.) (Revised by Jim Kingdon, 19-Jan-2023.) |
| Theorem | strnfvn 13373 |
Value of a structure component extractor Note: Normally, this theorem shouldn't be used outside of this section, because it requires hard-coded index values. Instead, use strslfv 13397. (Contributed by NM, 9-Sep-2011.) (Revised by Jim Kingdon, 19-Jan-2023.) (New usage is discouraged.) |
| Theorem | strfvssn 13374 |
A structure component extractor produces a value which is contained in a
set dependent on |
| Theorem | ndxarg 13375 | Get the numeric argument from a defined structure component extractor such as df-base 13358. (Contributed by Mario Carneiro, 6-Oct-2013.) |
| Theorem | ndxid 13376 |
A structure component extractor is defined by its own index. This
theorem, together with strslfv 13397 below, is useful for avoiding direct
reference to the hard-coded numeric index in component extractor
definitions, such as the (Contributed by NM, 19-Oct-2012.) (Revised by Mario Carneiro, 6-Oct-2013.) (Proof shortened by BJ, 27-Dec-2021.) |
| Theorem | ndxslid 13377 | A structure component extractor is defined by its own index. That the index is a natural number will also be needed in quite a few contexts so it is included in the conclusion of this theorem which can be used as a hypothesis of theorems like strslfv 13397. (Contributed by Jim Kingdon, 29-Jan-2023.) |
| Theorem | slotslfn 13378 | A slot is a function on sets, treated as structures. (Contributed by Mario Carneiro, 22-Sep-2015.) (Revised by Jim Kingdon, 10-Feb-2023.) |
| Theorem | slotex 13379 | Existence of slot value. A corollary of slotslfn 13378. (Contributed by Jim Kingdon, 12-Feb-2023.) |
| Theorem | strndxid 13380 | The value of a structure component extractor is the value of the corresponding slot of the structure. (Contributed by AV, 13-Mar-2020.) |
| Theorem | reldmsets 13381 | The structure override operator is a proper operator. (Contributed by Stefan O'Rear, 29-Jan-2015.) |
| Theorem | setsvalg 13382 | Value of the structure replacement function. (Contributed by Mario Carneiro, 30-Apr-2015.) |
| Theorem | setsvala 13383 | Value of the structure replacement function. (Contributed by Mario Carneiro, 1-Dec-2014.) (Revised by Jim Kingdon, 20-Jan-2023.) |
| Theorem | setsex 13384 | Applying the structure replacement function yields a set. (Contributed by Jim Kingdon, 22-Jan-2023.) |
| Theorem | strsetsid 13385 | Value of the structure replacement function. (Contributed by AV, 14-Mar-2020.) (Revised by Jim Kingdon, 30-Jan-2023.) |
| Theorem | fvsetsid 13386 | The value of the structure replacement function for its first argument is its second argument. (Contributed by SO, 12-Jul-2018.) |
| Theorem | setsfun 13387 | A structure with replacement is a function if the original structure is a function. (Contributed by AV, 7-Jun-2021.) |
| Theorem | setsfun0 13388 |
A structure with replacement without the empty set is a function if the
original structure without the empty set is a function. This variant of
setsfun 13387 is useful for proofs based on isstruct2r 13363 which requires
|
| Theorem | setsn0fun 13389 | The value of the structure replacement function (without the empty set) is a function if the structure (without the empty set) is a function. (Contributed by AV, 7-Jun-2021.) (Revised by AV, 16-Nov-2021.) |
| Theorem | setsresg 13390 |
The structure replacement function does not affect the value of |
| Theorem | setsabsd 13391 | Replacing the same components twice yields the same as the second setting only. (Contributed by Mario Carneiro, 2-Dec-2014.) (Revised by Jim Kingdon, 22-Jan-2023.) |
| Theorem | setscom 13392 | Different components can be set in any order. (Contributed by Mario Carneiro, 5-Dec-2014.) (Revised by Mario Carneiro, 30-Apr-2015.) |
| Theorem | setscomd 13393 | Different components can be set in any order. (Contributed by Jim Kingdon, 20-Feb-2025.) |
| Theorem | strslfvd 13394 | Deduction version of strslfv 13397. (Contributed by Mario Carneiro, 15-Nov-2014.) (Revised by Jim Kingdon, 30-Jan-2023.) |
| Theorem | strslfv2d 13395 | Deduction version of strslfv 13397. (Contributed by Mario Carneiro, 30-Apr-2015.) (Revised by Jim Kingdon, 30-Jan-2023.) |
| Theorem | strslfv2 13396 |
A variation on strslfv 13397 to avoid asserting that |
| Theorem | strslfv 13397 |
Extract a structure component |
| Theorem | strslfv3 13398 | Variant on strslfv 13397 for large structures. (Contributed by Mario Carneiro, 10-Jan-2017.) (Revised by Jim Kingdon, 30-Jan-2023.) |
| Theorem | strslssd 13399 | Deduction version of strslss 13400. (Contributed by Mario Carneiro, 15-Nov-2014.) (Revised by Mario Carneiro, 30-Apr-2015.) (Revised by Jim Kingdon, 31-Jan-2023.) |
| Theorem | strslss 13400 |
Propagate component extraction to a structure |
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |