%------------------------------------------------------------------------- % % Properties of countable (and uncountable) sets. % % For PVS version 3.2. February 9, 2005 % --------------------------------------------------------------------- % Author: Jerry James (jamesj@acm.org), University of Kansas % David Lester, Manchester University % % 1.1: Modified for PVS 4.2 (EXPORTs removed, IMPORTS restricted) %-------------------------------------------------------------------------
countable_props[T: TYPE]: THEORY
BEGIN
IMPORTING countability[T], finite_sets[T]
% These imports are just for the proofs IMPORTING infinite_nat_def[T]
t: VAR T
S, R, Q: VAR set[T]
Fin: VAR finite_set[T]
Inf: VAR infinite_set[T]
A,Count, Count1, Count2: VAR countable_set[T]
CountInf, CountInf1, CountInf2: VAR countably_infinite_set[T]
Uncount: VAR uncountable_set[T]
% Every infinite set has a countably infinite subset
countably_infinite_subset_exists: THEOREM FORALL Inf: EXISTS CountInf: subset?(CountInf, Inf)
% Every infinite set has a countably infinite proper subset
countably_infinite_strict_subset_exists: THEOREM FORALL Inf: EXISTS CountInf: strict_subset?(CountInf, Inf)
%%% Countable sets % Countable sets are finite or countably infinite
countable_card: COROLLARY
is_countable(S) IFF is_finite(S) OR is_countably_infinite(S)
%%% Adding and removing countable pieces from infinite sets
countably_infinite_subset_union: LEMMA FORALL Q, R, S:
subset?(Q, S) AND
disjoint?(S, R) AND
is_countably_infinite(R) AND is_countably_infinite(Q) IMPLIES card_eq(S, union(S, R))
countable_finite_subset_union: LEMMA FORALL Q, R, S:
subset?(Q, S) AND
disjoint?(S, R) AND is_finite(R) AND is_countably_infinite(Q) IMPLIES card_eq(S, union(S, R))
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 ist noch experimentell.