# What is arithmetic circuits indeed?

I know that Boolean circuits and Arithmetic circuits are two different ways of representing a computation. But I want to know how to instantiate arithmetic circuits and it's computation in practice. For example, when we multiply two l bits numbers, we say that arithmetic circuits are efficient because it represent those two nums as two field elements, and only need 1 multiplication gate. But I don't understand: don't we have to represent those two nums in bits in machine code? And do we have to represent that multiplication gate in basic blocks such as and-gate/xor-gate...or is there a real circuit structure is multiplication gate? Sorry for such a dummy question, but this confuse me for quite a long time and I can't find the answer by myself. So could anyone give me some guide or some paper to this question? Great thanks.

• Fields of characteristic 2 (i.e., of order $2^n$) are useful for easier security proofs (e.g., search for "tower field construction" and AES). Fields of odd characteristic are implemented for example in fully homomorphic encryption.
– j.p.
May 18, 2021 at 6:25
• @j.p. I'm sorry, I did't get what you mean. First, is field of 2^n a high level representation of boolean circuit or considered as an arithmetic circuit? I think AES is usually implemented in boolean circuit right? Second, my question is really about practical representation, so do we still have to represent those arithmetic circuits into real boolean gates for computation in reality? If so, why we can get those efficiency improvement?
– rzxh
May 18, 2021 at 9:21
• The field with $2^n$ elements is only used for the proofs, the HW-implementation is then in bits.
– j.p.
May 18, 2021 at 18:01