def composition
      root_terms.reduce(SignedMultiset.new) do |s, t|
        s.increment(t.atom.dim, t.exponent) if t.atom
        s
      end
    end
def composition
      root_terms.reduce(SignedMultiset.new) do |s, t|
        s.increment(t.atom.dim, t.exponent) if t.atom
        s
      end
    end
A representation of a unit based on the atoms it's derived from.
 @return [SignedMultiset]
 @api public