argumentsForAtoms.sequence |=
slotdepTermsForAtoms.sequence, slotTermsForAtoms.sequence,
(((termsForAtoms.nonemptysequence.choice, repo?) | repo),
slotdepTermsForAtoms.sequence, slotTermsForAtoms.sequence)?,
resl?
argumentsForAtoms.sequence |=
(slotdepTermsForAtoms.sequence & slotTermsForAtoms.sequence),
(((termsForAtoms.nonemptysequence.choice, repo?) | repo),
(slotdepTermsForAtoms.sequence & slotTermsForAtoms.sequence))?,
resl?
and similarly for Expr.