# Minimizing AND gates in ANF

If I have a boolean expression made up of ANDs and XORs in algebraic normal form, are there any algorithms which can minimize the circuit further?

I'm looking to minimize AND gates specifically.

I'm building ANF from a truth table, so if there's a different way to go about getting a circuit made from XORs and ANDs starting with a truth table that has a minimal number of ANDs that'd be helpful too.

Edit: to be more explicit, I'm limited to using xor and and gates.

• The only realistic answer is "maybe". Apr 13 '16 at 14:42
• Karnot maps perhaps? Also, the best way to make a complex table would be multiplexor. Apr 13 '16 at 14:45
• ANF = what precisely? Apr 13 '16 at 15:17
• Algebraic normal form. en.m.wikipedia.org/wiki/Algebraic_normal_form Apr 13 '16 at 15:18
• XOR can be made to function like an inverter if you wire one input high. This means you can convert an AND gate to a NAND gate by putting an XOR inverter on the output. So solve for the NAND minimum solution using Karnough map. Then use one AND plus one XOR for each NAND gate. Apr 13 '16 at 18:16