Fixtype of Syntheto type products.
This is a product type introduced by fty::defprod.
This is like a cartesian product of types, where each factor has a name, so it is in fact a list of type fields. In addition, there is an optional invariant expression, which, if present, must be boolean-valued and must have the field names as its only variables. The idea is that only the combinations of fields that satisfy the expression are part of the type. When the expression is absent, all combinations are part of the type.