The content of the IFF core is concentrated in a dozen or so core concepts. These are partitioned into basic collections, metastack partial orders and fundamental relations. For a mental image of the metastack architecture, picture a three-dimensional figure in the form of a right prism, with the vertices being the basic collections, the horizontal dimension being structured as the two-dimensional Figure 1 by the fundamental relations, and the vertical dimension being structured by the metastack orders.

Basic Collections

The basic collections in the metastack are set (set), function (ftn), span (spn), predicate (unary relation or part) (pred) and (binary) relation (rel). There are also endorelations (endorel) and partial orders (ordendo), and more generally, endospans (endospn) and partially ordered endospans (ordendo). These are organized in the metastack via subset chains. Relations can be thought of (and transform into) predicates on a binary product, and predicates can be thought of (and transform into) special functions (injections).

⋯  ⊆ setn ⊆ setn+1 ⊆  ⋯  ⊆ setmeta ⊆ settype ⊆ setiff
⋯  ⊆ ftnn ⊆ ftnn+1 ⊆  ⋯  ⊆ ftnmeta ⊆ ftntype ⊆ ftniff
⋯  ⊆ spnn ⊆ spnn+1 ⊆  ⋯  ⊆ spnmeta ⊆ spntype ⊆ spniff
⋯  ⊆ predn ⊆ predn+1 ⊆  ⋯  ⊆ predmeta ⊆ predtype ⊆ prediff
⋯  ⊆ reln ⊆ reln+1 ⊆  ⋯  ⊆ relmeta ⊆ reltype ⊆ reliff
⋯  ⊆ endon ⊆ endon+1 ⊆  ⋯  ⊆ endometa ⊆ endotype ⊆ endoiff
⋯  ⊆ ordn ⊆ ordn+1 ⊆  ⋯  ⊆ ordmeta ⊆ ordtype ⊆ ordiff
Subset Chains

Associated with the basic collections are various component functions. There are source and target component functions ∂0, ∂1 : ftn → set for the function collection, with pairing function (∂0,∂1) : ftn → set×set. There are genus and differentia component functions γ, δ : ftn → set for the predicate collection. There are domain and codomain component functions σ0, σ1 : rel → set for the relation collection, with pairing function (σ01) : rel → set×set. There is also an extent component function (injection) ε : rel → set×set for the relation collection. These are organized in the metastack via restriction and optimal-restriction chains.

⋯  ⊑ 0n ⊑ 0n+1 ⊑  ⋯  ⊑ 0meta ⊑ 0type ⊑ 0iff
⋯  ⊑ 1n ⊑ 1n+1 ⊑  ⋯  ⊑ 1meta ⊑ 1type ⊑ 1iff
⋯  ⊑ δn ⊑ δn+1 ⊑  ⋯  ⊑ δmeta ⊑ δtype ⊑ δiff
⋯  ⊑ εn ⊑ εn+1 ⊑  ⋯  ⊑ εmeta ⊑ εtype ⊑ εiff
⋯  ⊑ σ0n ⊑ σ0n+1 ⊑  ⋯  ⊑ σ0meta ⊑ σ0type ⊑ σ0iff
⋯  ⊑ σ1n ⊑ σ1n+1 ⊑  ⋯  ⊑ σ1meta ⊑ σ1type ⊑ σ1iff
⋯  ⊑̊ γn ⊑̊ γn+1 ⊑̊  ⋯  ⊑̊ γmeta ⊑̊ γtype ⊑̊ γiff
⋯  ⊑̊ (∂in) ⊑̊ (∂in+1) ⊑̊  ⋯  ⊑̊ (∂imeta) ⊑̊ (∂itype) ⊑̊ (∂iiff)
⋯  ⊑̊ in) ⊑̊ in+1) ⊑̊  ⋯  ⊑̊ imeta) ⊑̊ itype) ⊑̊ iiff)
(Optimal-)Restriction Chains

Metastack Orders

The partial orders in the metastack are subset (⊆), function restriction (⊑), function optimal-restriction (⊑̊), span abridgment, predicate delimitation (≤) and relation abridgment (≼). Just as (binary) relations are predicates (unary relations or parts) on a binary product and predicates are special functions (injections), so also abridgment is a special case of delimitation and delimitaton is a special case of optimal-restriction. These are organized in the metastack via abridgment chains.

⋯  ≼ n ≼ n+1 ≼  ⋯  ≼ meta ≼ type ≼ iff
⋯  ≼ n ≼ n+1 ≼  ⋯  ≼ meta ≼ type ≼ iff
⋯  ≼ ⊑̊n ≼ ⊑̊n+1 ≼  ⋯  ≼ ⊑̊meta ≼ ⊑̊type ≼ ⊑̊iff
⋯  ≼ n ≼ n+1 ≼  ⋯  ≼ meta ≼ type ≼ iff
⋯  ≼ n ≼ n+1 ≼  ⋯  ≼ meta ≼ type ≼ iff
Abridgement Chains

Fundamental Relations

The fundamental relations in the metastack are function belonging (x  y), span belonging (u  v), predicate (subobject) inclusion (p  q), relation inclusion (r  s), function-predicate membership (x  p) with associated proof operation (⊢(xp) = x̂), span-relation membership (u  r) with associated proof operation (⊢(ur) = ȗ), function-set elementhood (x : X) and span-set-pair elementhood (u : (X,Y)). These are defined in terms of “generalized elements” (morphisms in general, functions between abstract sets here) and “generalized subsets” (aka subobjects, parts or predicates) (monomorphisms in general, injections between abstract sets here). The usual relationship holds between inclusion and membership; that is, inclusion is equivalent to universal implication of membership: p  q iff ∀x ∈ X (x  p implies x  q) for any two X-predicates (subobjects) pq : X, and r  s iff ∀u ∈ (X,Y) (u  r implies u  s) for any two (X,Y)-relations rs : (X,Y).

[IFF Subobject Architecture]
Figure 1: IFF Subobject Architecture

The IFF uses category theory, both in its applications and as a foundation for its architecture. Composition is the most fundamental concept in category theory. Generalized composition is composition extended to generalized elements (morphisms in general, functions between abstract sets here). The IFF represents, axiomatizes and uses generalized composition to ensure that the IFF natural part has an atomic expression. In the IFF, generalized composition is defined in terms of span-relation membership, plus the associated proof operation.

Some IFF documents such as this one contain a lot of unicode characters, and so require a recent browser. But even some recent browsers fail to render it properly. Two browsers that do render these documents correctly are Firefox and Opera.