Argument Genl

The ``arg-genls'' predicates are another way (besides ``arg-isa'') to constrain the arguments of relations. Use of these predicates is optional and frankly not even very common. Of course, one can state more complicated sorts of constraints than ``arg-isa'' and ``arg-genls'' by asserting a longer Cyc formula, but these two types of short-cuts handle the most common cases.
#$arg1Genl   arg 1 genl

    A binary #$ArgGenlPredicate (q.v.). (#$arg1Genl RELN COL) means that semantic well-formedness requires that anything given as the first argument to RELN must be a subcollection of COL. That is, (RELN ARG1 ...) is semantically well-formed only if (#$genls ARG1 COL) holds. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its specializations. See #$argGenl for a similar but more flexible ternary predicate.
    guid: bd588b1d-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate

#$arg2Genl   arg 2 genl

    A binary #$ArgGenlPredicate (q.v.). (#$arg2Genl RELN COL) means that semantic well-formedness requires that anything given as the second argument to RELN must be a subcollection of COL. That is, (RELN ARG1 ARG2 ...) is semantically well-formed only if (#$genls ARG2 COL) holds. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its specializations. See #$argGenl for a similar but more flexible ternary predicate.
    guid: bd58dcda-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate

#$arg3Genl   arg 3 genl

    A binary #$ArgGenlPredicate (q.v.). (#$arg3Genl RELN COL) means that semantic well-formedness requires that anything given as the third argument to RELN must be a subcollection of COL. That is, (RELN ARG1 ARG2 ARG3 ...) is semantically well-formed only if (#$genls ARG3 COL) holds. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its specializations. See #$argGenl for a similar but more flexible ternary predicate.
    guid: bd58b8c3-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate

#$arg4Genl   arg 4 genl

    A binary #$ArgGenlPredicate (q.v.). (#$arg4Genl RELN COL) means that semantic well-formedness requires that anything given as the fourth argument to RELN must be a subcollection of COL. That is, (RELN ARG1 ARG2 ARG3 ARG4 ...) is semantically well-formed only if (#$genls ARG4 COL) holds. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its specializations. See #$argGenl for a similar but more flexible ternary predicate.
    guid: bd67e911-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate

#$arg5Genl   arg 5 genl

    A binary #$ArgGenlPredicate (q.v.). (#$arg5Genl RELN COL) means that semantic well-formedness requires that anything given as the fifth argument to RELN must be a subcollection of COL. That is, (RELN ARG1 ARG2 ARG3 ARG4 ARG5 ...) is semantically well-formed only if (#$genls ARG5 COL) holds. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its specializations. See #$argGenl for a similar but more flexible ternary predicate.
    guid: bd5d7783-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate

#$argsGenl   args genl

    A binary #$ArgGenlPredicate (q.v.) that is used to put a specified #$genls based argument-type constraint on all of a given relation's argument-places at once. (#$argsGenl RELN COL) means that semantic well-formedness requires that each argument to which RELN is applied (regardless of argument-place) be an subcollection of COL. For example, `(#$argsGenl #$PerformSimultaneouslyFn #$Event)' means that the function #$PerformSimultaneouslyFn must only be applied to types of events. #$argsGenl is particularly useful for constraining (any and all of) the arguments to a #$VariableArityRelation (the preceding example being a case in point); though #$argsGenl may be applied to fixed-arity relations as well. For an explanation of semantic well-formedness, see #$CycLExpression-Assertible and its immediate specializations. See also #$argsIsa.
    guid: bd651c1b-9c29-11b1-9dad-c379636f7270
    direct instance of: #$OpenCycDefinitionalPredicate #$IntangibleObjectRelatingPredicate #$DefaultMonotonicPredicate #$ArgGenlBinaryPredicate