28 lines
665 B
Text
28 lines
665 B
Text
( ( consolidate
|
|
= a m z mm za zm zz
|
|
. ( removeNumFactors
|
|
= a m z
|
|
. !arg:?a+#%*?m+?z
|
|
& !a+!m+removeNumFactors$!z
|
|
| !arg
|
|
)
|
|
& !arg
|
|
: ?a
|
|
%?`m
|
|
( %?z
|
|
& !m
|
|
: ?
|
|
+ ( %@?mm
|
|
& !z:?za (?+!mm+?:?zm) ?zz
|
|
)
|
|
+ ?
|
|
)
|
|
& consolidate$(!a removeNumFactors$(!m+!zm) !za !zz)
|
|
| !arg
|
|
)
|
|
& (test=.out$(!arg "==>" consolidate$!arg))
|
|
& test$(A+B C+D)
|
|
& test$(A+B B+D)
|
|
& test$(A+B C+D D+B)
|
|
& test$(H+I+K A+B C+D D+B F+G+H)
|
|
);
|