Complex canonicalizer for the separable atom

Complex2Real.separable_canon(expr, real_args, imag_args, real2imag)

## Arguments

expr

An Expression object

real_args

A list of Constraint objects for the real part of the expression

imag_args

A list of Constraint objects for the imaginary part of the expression

real2imag

A list mapping the ID of the real part of a complex expression to the ID of its imaginary part.

## Value

A canonicalization of a separable atom, where the returned variables are its real and imaginary components parsed out.