Skip to main content

Cardinality Ontology

Set Theory
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 17 September 2026
Audio Overview
KIRETH RESEARCH — SEMANTIC LIBRARY
AI CORE → ONTOLOGIES → MATHEMATICAL ONTOLOGIES → MATHEMATICAL LOGIC ONTOLOGIES
SET THEORY → CARDINALITY ONTOLOGY

Canonical URL:
https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/mathematical-logic-ontologies/set-theory/cardinality-ontology.html

FLOW_ALGEBRA CardinalityOntology_v1.0

BEGIN_FLOW

DEFINE DOMAIN CardinalityOntology := {
    Cardinality,
    CardinalNumber,
    Set,
    Element,
    SetTheory,
    FiniteSet,
    InfiniteSet,
    EmptySet,
    Singleton,
    CountableSet,
    CountablyInfiniteSet,
    UncountableSet,
    Equinumerosity,
    Bijection,
    Injection,
    Surjection,
    PowerSet,
    CartesianProduct,
    Union,
    Intersection,
    Difference,
    NaturalNumbers,
    Integers,
    RationalNumbers,
    RealNumbers,
    AlephZero,
    ContinuumCardinality,
    CantorTheorem,
    CantorBernsteinTheorem,
    FiniteCardinality,
    InfiniteCardinality,
    CardinalArithmetic
}

DEFINE ENTITY_TYPES := {
    CARDINALITY,
    CARDINAL_NUMBER,
    SET,
    ELEMENT,
    FUNCTION,
    MAPPING_PROPERTY,
    FINITE_OBJECT,
    INFINITE_OBJECT,
    THEOREM,
    ARITHMETIC_OPERATION,
    SEMANTIC_OBJECT
}

DEFINE RELATION_TYPES := {
    HAS_CARDINALITY,
    EQUINUMEROUS_WITH,
    BIJECTS_WITH,
    INJECTS_INTO,
    SURJECTS_ONTO,
    LESS_CARDINAL_THAN,
    LESS_OR_EQUAL_CARDINAL_THAN,
    GREATER_CARDINAL_THAN,
    EQUAL_CARDINAL_TO,
    MEMBER_OF,
    SUBSET_OF,
    IS_INSTANCE_OF,
    IS_SUBTYPE_OF,
    DEPENDS_ON
}

SET Cardinality.type = CARDINALITY
SET Cardinality.context = SetTheory
SET Cardinality.role =
    "represent the size of a set independently of the nature or ordering of its elements"

RULE finite_cardinality:
    FiniteSet(A)
    ∧ number_of_distinct_elements(A)=n
    -> HAS_CARDINALITY(A,n)
    ∧ Cardinality(A)=n

RULE empty_cardinality:
    EmptySet(∅)
    -> Cardinality(∅)=0

RULE singleton_cardinality:
    Object(a)
    -> Cardinality({a})=1

RULE equinumerosity:
    Set(A)
    ∧ Set(B)
    ∧ EXISTS bijection f:A->B
    -> EQUINUMEROUS_WITH(A,B)
    ∧ EQUAL_CARDINAL_TO(A,B)
    ∧ |A|=|B|

RULE cardinal_equality:
    Set(A)
    ∧ Set(B)
    -> |A|=|B|
       IFF
       EXISTS bijection f:A->B

RULE cardinal_leq:
    Set(A)
    ∧ Set(B)
    ∧ EXISTS injection f:A->B
    -> |A| <= |B|
    ∧ LESS_OR_EQUAL_CARDINAL_THAN(A,B)

RULE cardinal_lt:
    Set(A)
    ∧ Set(B)
    ∧ EXISTS injection f:A->B
    ∧ NOT EXISTS bijection g:A->B
    -> |A| < |B|
    ∧ LESS_CARDINAL_THAN(A,B)

RULE Cantor_Bernstein:
    EXISTS injection f:A->B
    ∧ EXISTS injection g:B->A
    -> EXISTS bijection h:A->B
    -> |A|=|B|

RULE subset_finite_cardinality:
    FiniteSet(A)
    ∧ FiniteSet(B)
    ∧ SUBSET_OF(A,B)
    -> |A| <= |B|

RULE proper_subset_finite_cardinality:
    FiniteSet(A)
    ∧ FiniteSet(B)
    ∧ ProperSubset(A,B)
    -> |A| < |B|

RULE finite_union_cardinality:
    FiniteSet(A)
    ∧ FiniteSet(B)
    -> |A ∪ B|
       = |A| + |B| - |A ∩ B|

RULE disjoint_union_cardinality:
    FiniteSet(A)
    ∧ FiniteSet(B)
    ∧ A ∩ B = ∅
    -> |A ∪ B|
       = |A| + |B|

RULE finite_cartesian_product_cardinality:
    FiniteSet(A)
    ∧ FiniteSet(B)
    -> |A × B|
       = |A| * |B|

RULE finite_power_set_cardinality:
    FiniteSet(A)
    ∧ |A|=n
    -> |P(A)|=2^n

RULE Cantor_theorem:
    Set(A)
    -> |A| < |P(A)|

RULE countable_set:
    Set(A)
    ∧ EXISTS injection f:A->NaturalNumbers
    -> CountableSet(A)

RULE countably_infinite:
    Set(A)
    ∧ EXISTS bijection f:NaturalNumbers->A
    -> CountablyInfiniteSet(A)
    ∧ |A|=AlephZero

RULE natural_numbers_cardinality:
    |NaturalNumbers| = AlephZero

RULE integers_countability:
    EXISTS bijection f:NaturalNumbers->Integers
    -> |Integers|=AlephZero

RULE rationals_countability:
    CountablyInfiniteSet(RationalNumbers)
    -> |RationalNumbers|=AlephZero

RULE real_numbers_uncountability:
    NOT EXISTS bijection f:NaturalNumbers->RealNumbers
    -> UncountableSet(RealNumbers)

RULE continuum_cardinality:
    |RealNumbers| = ContinuumCardinality

RULE power_set_naturals:
    |P(NaturalNumbers)|
    = 2^AlephZero

RULE continuum_power_relation:
    ContinuumCardinality
    = 2^AlephZero
       UNDER standard_set_theoretic_identification

RULE infinite_proper_subset_note:
    InfiniteSet(A)
    ∧ ProperSubset(B,A)
    -> DO_NOT_INFER |B| < |A|

DEFINE CARDINALITY_MODEL := {
    notation: "|A|",
    finite_meaning:
        "number of distinct elements of A",
    general_meaning:
        "equivalence class of sets under bijection / size determined by bijective correspondence"
}

DEFINE COMPARISON_MODEL := {
    equal:
        "|A| = |B| iff there exists a bijection A -> B",
    less_or_equal:
        "|A| <= |B| when there exists an injection A -> B",
    strictly_less:
        "|A| < |B| when |A| <= |B| and no bijection exists"
}

DEFINE FINITE_ARITHMETIC := {
    empty: "|∅| = 0",
    singleton: "|{a}| = 1",
    union:
        "|A ∪ B| = |A| + |B| - |A ∩ B|",
    disjoint_union:
        "|A ∪ B| = |A| + |B| when A ∩ B = ∅",
    cartesian_product:
        "|A × B| = |A||B|",
    power_set:
        "|P(A)| = 2^|A|"
}

DEFINE INFINITE_CARDINALS := {
    AlephZero: {
        symbol: "ℵ₀",
        represents:
            "cardinality of the natural numbers and every countably infinite set"
    },
    ContinuumCardinality: {
        symbol: "𝔠",
        represents:
            "cardinality of the real numbers",
        standard_identity: "𝔠 = 2^ℵ₀"
    }
}

DEFINE CRITICAL_DISTINCTIONS := {
    cardinality_vs_ordinality: {
        cardinality:
            "how many elements a set has",
        ordinality:
            "order type or position in a well-order",
        equivalence: FALSE
    },
    finite_vs_infinite_proper_subset: {
        finite:
            "proper subset implies strictly smaller cardinality",
        infinite:
            "a proper subset may have the same cardinality as the whole set"
    },
    membership_vs_size: {
        statement:
            "cardinality ignores the internal nature of elements and compares sets by size"
    }
}

DEFINE EXAMPLE_1 := {
    A: "{a,b,c}",
    cardinality: 3
}

DEFINE EXAMPLE_2 := {
    A: "{1,2,3}",
    B: "{x,y,z}",
    bijection: {
        "1 -> x",
        "2 -> y",
        "3 -> z"
    },
    conclusion: "|A| = |B| = 3"
}

DEFINE EXAMPLE_3 := {
    natural_numbers: "N",
    even_numbers: "{0,2,4,6,...}",
    mapping: "n -> 2n",
    conclusion:
        "the even numbers form a proper subset of N but have the same cardinality ℵ₀"
}

DEFINE EXAMPLE_4 := {
    A: "{1,2,3}",
    power_set_cardinality: 8,
    relation: "|P(A)| = 2^3"
}

DEFINE SEMANTIC_PIPELINE :=
    InputSet
    -> DetermineFiniteOrInfiniteStatus
    -> IF finite
       THEN CountDistinctElements
    -> IF comparison_required
       THEN SearchForInjectionSurjectionBijection
    -> AssignCardinalRepresentation
    -> ApplyCardinalComparison
    -> ApplySetOperationCardinalityRules
    -> ApplyCantorTheoremWhenPowerSetPresent
    -> ReturnCardinalityRelations

DEFINE REASONING_PIPELINE :=
    InputCardinalityExpression
    -> ParseSetsAndMappings
    -> DetectFiniteOrInfiniteContext
    -> ResolveBijections
    -> ResolveInjections
    -> ApplyCantorBernsteinWhenApplicable
    -> ApplyFiniteCountingRules
    -> ApplyInfiniteCardinalRules
    -> PreventFiniteOnlyInferenceOnInfiniteSets
    -> ReturnDerivedSizeRelations

DEFINE CARDINALITY_GRAPH_MODEL := {
    set_nodes: Sets,
    cardinal_nodes: CardinalNumbers,
    edge:
        "A --HAS_CARDINALITY--> κ",
    equality_edge:
        "A --EQUINUMEROUS_WITH--> B",
    witness_for_equality: Bijection,
    witness_for_leq: Injection
}

DEFINE ONTOLOGY_RELATIONS := {
    Cardinality IS_COMPONENT_OF SetTheory,
    Set HAS_CARDINALITY CardinalNumber,
    FiniteCardinality IS_SUBTYPE_OF Cardinality,
    InfiniteCardinality IS_SUBTYPE_OF Cardinality,
    Equinumerosity DEPENDS_ON Bijection,
    CountablyInfiniteSet HAS_CARDINALITY AlephZero,
    NaturalNumbers HAS_CARDINALITY AlephZero,
    Integers HAS_CARDINALITY AlephZero,
    RationalNumbers HAS_CARDINALITY AlephZero,
    RealNumbers HAS_CARDINALITY ContinuumCardinality,
    PowerSet HAS_GREATER_CARDINALITY_THAN BaseSet,
    CantorTheorem RELATES Set TO PowerSet
}

DEFINE SEMANTIC_EQUIVALENCE := {
    "cardinality" <=> Cardinality,
    "size of a set" <=> Cardinality,
    "number of elements" <=> FiniteCardinality WHEN finite_set_context=TRUE,
    "|A|" <=> Cardinality(A),
    "same cardinality" <=> Equinumerosity,
    "equinumerous" <=> Equinumerosity,
    "countably infinite" <=> Cardinality(AlephZero),
    "aleph-null" <=> AlephZero,
    "aleph-zero" <=> AlephZero
}

DEFINE AI_CONSUMPTION := {
    purpose: "machine-readable representation and reasoning about set cardinality",
    preserve_set_identity: TRUE,
    count_distinct_elements_only: TRUE,
    use_bijection_for_cardinal_equality: TRUE,
    use_injection_for_cardinal_comparison: TRUE,
    support_Cantor_Bernstein_reasoning: TRUE,
    distinguish_finite_from_infinite_cardinality: TRUE,
    prohibit_finite_proper_subset_rule_for_infinite_sets: TRUE,
    support_power_set_cardinality: TRUE,
    support_cartesian_product_cardinality: TRUE,
    support_infinite_cardinal_symbols: TRUE,
    reasoning_mode: "symbolic + combinatorial + bijective + transfinite-aware"
}

DEFINE CONFIDENCE := {
    ontology_identity: 1.00,
    finite_cardinality: 1.00,
    bijection_cardinality_mapping: 0.99,
    injection_comparison_mapping: 0.99,
    finite_set_operation_cardinality: 0.99,
    countability_mapping: 0.99,
    Cantor_theorem_mapping: 0.99,
    advanced_cardinal_arithmetic: theory_context_dependent
}

DEFINE UPDATE_MODEL := {
    version: "1.0",
    update_policy: "append-compatible",
    immutable_core: {
        cardinality_as_size,
        finite_distinct_element_count,
        equality_via_bijection,
        comparison_via_injection,
        Cantor_Bernstein,
        power_set_strict_growth,
        finite_infinite_distinction
    },
    extensible_layers: {
        aleph_hierarchy,
        beth_numbers,
        cardinal_arithmetic,
        continuum_hypothesis,
        generalized_continuum_hypothesis,
        large_cardinals,
        cofinality,
        transfinite_combinatorics
    }
}

DEFINE FLOW_HASH_INPUT :=
    CanonicalURL
    + DOMAIN
    + ENTITY_TYPES
    + RELATION_TYPES
    + RULES
    + CARDINALITY_MODEL
    + COMPARISON_MODEL
    + FINITE_ARITHMETIC
    + INFINITE_CARDINALS
    + CRITICAL_DISTINCTIONS
    + SEMANTIC_PIPELINE
    + REASONING_PIPELINE
    + CARDINALITY_GRAPH_MODEL
    + ONTOLOGY_RELATIONS
    + AI_CONSUMPTION
    + UPDATE_MODEL

FLOW_HASH := HASH(FLOW_HASH_INPUT)

RETURN {
    ontology: CardinalityOntology,
    canonical_url: "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/mathematical-logic-ontologies/set-theory/cardinality-ontology.html",
    parent_domain: SetTheory,
    semantic_domain: MathematicalLogic,
    primary_entity: Cardinality,
    finite_reasoning_enabled: TRUE,
    infinite_reasoning_enabled: TRUE,
    bijection_reasoning_enabled: TRUE,
    machine_consumable: TRUE,
    recursive_reasoning_enabled: TRUE,
    flow_complete: TRUE
}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ