Expandable are all objects that can be expanded, like: 5(2 + 3x) or -7x(4x - 1) or (2x - 3)(8x + 2) or -(7x - 6)
So they are always a Product of two Exponenteds. One of these Exponenteds at least is a Sum of at least two terms. It might well be that the exponent is assumed to always be Value(1). Maybe make it clear someday...
The binomial like (3x + 2)² are Expandables treated in the BinomialIdentity class
Possible args for __init__() :
(Exponented, Exponented) | (RANDOMLY, <type>)
The usable types when creating a randomly Expandable:</type>
Options: reversed | randomly_reversed=nb
Fields :
Nothing specific
Debugging info :