Skip to content

Commit

Permalink
Fixing links simplification.md
Browse files Browse the repository at this point in the history
  • Loading branch information
clararod9 authored Mar 11, 2024
1 parent dfe1c24 commit b85b70b
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions mkdocs/docs/circom-language/circom-insight/simplification.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Constraint simplification

Constraint simplification is a key part of the `circom` compiler. Full simplification is activated by default, and its associated flag is `--O2` (see the [compilation options](../../compilation-options.md)). Simplification is not applied when the flag `--O0` is activated, and a weaker (and faster) form of simplification is applied when using the flag `--O1`.
Constraint simplification is a key part of the `circom` compiler. Full simplification is activated by default, and its associated flag is `--O2` (see the [compilation options](../../getting-started/compilation-options.md)). Simplification is not applied when the flag `--O0` is activated, and a weaker (and faster) form of simplification is applied when using the flag `--O1`.

Let us explain the performed simplification in detail.

Expand Down Expand Up @@ -28,7 +28,7 @@ Once we have explained why removing any private signal (including the private in

Only one of these flags/options can be enabled in the compilation.

In case we want to see the simplification applied we can use the flag [```--simplification_substitution```](../../compilation-options.md) to obtain a json file whose format is described [here](../formats/simplification-json.md).
In case we want to see the simplification applied we can use the flag [```--simplification_substitution```](../../getting-started/compilation-options.md) to obtain a json file whose format is described [here](../formats/simplification-json.md).

Note that, although the full simplification applied `--O2` can significantly reduce the number of constraints and signals, which has a positive impact in the time and space needed to compute the proof, this is the most time and space consuming phase of the compilation process. Hence, with large circuits, say with millions of constraints, compilation can take a long time (even minutes or hours) and can run in out-of-memory exceptions. In such cases, it is recommended to only use the `--O2` flag in the final steps of the project development.

Expand Down

0 comments on commit b85b70b

Please sign in to comment.