 SUMO   View all facts   Glossary   Help Entity > Abstract > Class > Relation > Function > BinaryFunction > AssociativeFunction
Next BinaryFunctionCommutativeFunction    UpBinaryFunction    Previous BinaryFunctionWhereFn  AssociativeFunction subject fact
 AssociativeFunction documentation A BinaryFunction is associative if bracketing has no effect on the value returned by the Function. More precisely, a Function ?FUNCTION is associative just in case (?FUNCTION ?INST1 (?FUNCTION ?INST2 ?INST3)) is equal to (?FUNCTION (?FUNCTION ?INST1 ?INST2) ?INST3), for all ?INST1, ?INST2, and ?INST3 has axiom `(=> (instance ?FUNCTION AssociativeFunction) (forall (?INST1 ?INST2 ?INST3) (=> (and (instance ?INST1 (DomainFn ?FUNCTION)) (instance ?INST2 (DomainFn ?FUNCTION)) (instance ?INST3 (DomainFn ?FUNCTION))) (equal (AssignmentFn ?FUNCTION ?INST1 (AssignmentFn ?FUNCTION ?INST1 ?INST2)) (AssignmentFn ?FUNCTION (AssignmentFn ?FUNCTION ?INST1 ?INST2) ?INST3)))))` is a kind of BinaryFunction BinaryFunction is first domain of distributes is first domain of identityElement is second domain of distributes Class is third domain of domain is third domain of domainSubclass Abstract is disjoint from Physical Kinds of AssociativeFunction :

• AdditionFn (9 facts) - If ?NUMBER1 and ?NUMBER2 are Numbers, then (AdditionFn ?NUMBER1 ?NUMBER2) is the arithmetical sum of these numbers
• DivisionFn (15 facts) - If ?NUMBER1 and ?NUMBER2 are Numbers, then (DivisionFn ?NUMBER1 ?NUMBER2) is the result of dividing ?NUMBER1 by ?NUMBER2. An exception occurs when ?NUMBER1 = 1, in which case (DivisionFn ?NUMBER1 ?NUMBER2) is the reciprocal of ?NUMBER2
• MaxFn (8 facts) - (MaxFn ?NUMBER1 ?NUMBER2) is the largest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, MaxFn returns one of its arguments
• MinFn (8 facts) - (MinFn ?NUMBER1 ?NUMBER2) is the smallest of ?NUMBER1 and ?NUMBER2. In cases where ?NUMBER1 is equal to ?NUMBER2, MinFn returns one of its arguments
• MultiplicationFn (52 facts) - If ?NUMBER1 and ?NUMBER2 are Numbers, then (MultiplicationFn ?NUMBER1 ?NUMBER2) is the arithmetical product of these numbers
• SubtractionFn (10 facts) - If ?NUMBER1 and ?NUMBER2 are Numbers, then (SubtractionFn ?NUMBER1 ?NUMBER2) is the arithmetical difference between ?NUMBER1 and ?NUMBER2, i.e. ?NUMBER1 minus ?NUMBER2. An exception occurs when ?NUMBER1 is equal to 0, in which case (SubtractionFn ?NUMBER1 ?NUMBER2) is the negation of ?NUMBER2