Dependency Hierarchy
Chips form a strict inclusion hierarchy. Including a chip implicitly includes all its dependencies. The effective profile is always one of the five below.

For instance, the Hash-to-curve chip depends on both Poseidon hash and Jubjub curve, both depending on the Native Arithmetic chip.
Hash-to-Curve ⊃ Poseidon + JubJub ⊃ Arith
  Each level adds fixed columns (unless marked as shared), gates, and lookup tables on top of its dependencies.
  Chip advice columns are merged by max-count (not summed) — JubJub's 9 cols absorb Native's 5.
Chip Dependencies
Chip Comparison
Proof & VK Sizes
Number of columns and associated arguments for a chip, as well as the minimum expected proof and VK size when using a chip in isolation. When chips are combined the proof and VK size are not additive.
Chip Adv cols Fixed cols Lookups Trash Proof size VK size Total
ComEvalsBytes ComBytes Bytes
Note on advice column merging: Chip advice columns use max-count merge, not summation. JubJub has 9 advice columns which absorb Native's 5 — the combined chip does not add 5+9=14, it uses 9 total. This is why JubJub and Hash-to-Curve share the same advice column count.
Verifier Operation Counts
Number of individual scalar expressions contributed by each chip, before batching into gate, lookup, and trashcan arguments.
Chip Gate expr. Lookup expr. Trash expr.
Minimum number of scalar operations required per chip summed across gate, lookup, and trashcan arguments as well as number of operations for the Multi-Scalar Multiplications (MSMs).
Chip Args MSM
negaddsubmulfrom_int addmuladdG1mulG1