project-oak / silveroak

Formal specification and verification of hardware, especially for security and privacy.
Apache License 2.0
123 stars 20 forks source link

Rename True and False constant circuits to One and Zero #920

Closed jadephilipoom closed 3 years ago

jadephilipoom commented 3 years ago

Currently, the True and False constant circuits defined in Expr.v mask the definitions of True and False in Coq's core logic, meaning that if Expr.v is imported then you have to write Logic.True and Logic.False. It's a bit annoying and makes specifications/invariants/proof states less readable. (Some Coq IDE setups, including mine, display True and False as unicode logical symbols, which makes circuits less readable as well.)

Are these names a suitable alternative?