Function Compose

Documentation:
arbitrary-arity version of COMPOSITION. The left-to-right argument order composes relations outside-in. e.g., (COMPOSE f g h) means (composition h (composition g f)). If the relations are unary functions, then the composition order corresponds to nested function terms. For example, if f,g,h are functions, then (value (COMPOSE f g h) ?arg) is equivalent to (f (g (h ?arg))).

Notes:

Instance-Of: Function, Relation, Set
Range: Binary-Relation

Equivalence Axioms for Compose:

(<=> (Compose @Binary-Relations)
     (Composition-Of ?Composed-Relation (Listof @Binary-Relations)))


Axioms for Compose:

(Undefined (Arity Compose))


Implication Axioms mentioning Compose:

(=> (= (Compose @Binary-Relations) ?Composed-Relation)
    (Forall (?R)
            (=> (Item ?R (Listof @Binary-Relations))
                (Binary-Relation ?R))))

(=> (= (Compose @Binary-Relations) ?Composed-Relation)
    (Composition-Of ?Composed-Relation (Listof @Binary-Relations)))