Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Judgment prove_syntactically_eq at crates/formality-rust/src/prove/prove_normalize.rs:134

Signature:

prove_syntactically_eq(_decls: Program, env: Env, assumptions: Wcs, a: Parameter, b: Parameter,) => Constraints

The number on each rule’s conclusion is positive coverage; the number on each premise is negative coverage. Click a number to browse the tests.

symmetric
LineCoverageSource
1471(prove_syntactically_eq(decls, env, assumptions, b, a) => c)
──────── ("symmetric")
1491(prove_syntactically_eq(decls, env, assumptions, a, b) => c)
rigid
LineCoverageSource
153N/A(let RigidTy { name: a_name, parameters: a_parameters } = a)
154N/A(let RigidTy { name: b_name, parameters: b_parameters } = b)
155(if a_name == b_name)
156(zip(decls, env, assumptions, a_parameters.clone(), b_parameters.clone(), &prove_syntactically_eq) => c)
──────── ("rigid")
158(prove_syntactically_eq(decls, env, assumptions, TyData::RigidTy(a), TyData::RigidTy(b)) => c)
alias
LineCoverageSource
162N/A(let AliasTy { name: a_name, parameters: a_parameters } = a)
163N/A(let AliasTy { name: b_name, parameters: b_parameters } = b)
164(if a_name == b_name)
1651(zip(decls, env, assumptions, a_parameters.clone(), b_parameters.clone(), &prove_syntactically_eq) => c)
──────── ("alias")
1671(prove_syntactically_eq(decls, env, assumptions, TyData::AliasTy(a), TyData::AliasTy(b)) => c)
existential-nonvar
LineCoverageSource
1711(prove_existential_var_eq(decls, env, assumptions, v, t) => c)
──────── ("existential-nonvar")
1731(prove_syntactically_eq(decls, env, assumptions, Variable::ExistentialVar(v), t) => c)