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_eq at crates/formality-rust/src/prove/prove/prove/prove_eq.rs:25

Signature:

prove_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
4014(prove_eq(decls, env, assumptions, r, l) => env_c)
──────── ("symmetric")
42121(prove_eq(decls, env, assumptions, l, r) => env_c)
rigid
LineCoverageSource
46N/A(let RigidTy { name: a_name, parameters: a_parameters } = a)
47N/A(let RigidTy { name: b_name, parameters: b_parameters } = b)
48(if a_name == b_name)
491(prove(decls, env, assumptions, Wcs::all_eq(a_parameters, b_parameters)) => c)
──────── ("rigid")
51102(prove_eq(decls, env, assumptions, TyData::RigidTy(a), TyData::RigidTy(b)) => c)
alias
LineCoverageSource
55N/A(let AliasTy { name: a_name, parameters: a_parameters } = a)
56N/A(let AliasTy { name: b_name, parameters: b_parameters } = b)
57(if a_name == b_name)
581(prove(decls, env, assumptions, Wcs::all_eq(a_parameters, b_parameters)) => env_c)
──────── ("alias")
601(prove_eq(decls, env, assumptions, TyData::AliasTy(a), TyData::AliasTy(b)) => env_c)
existential
LineCoverageSource
645(prove_existential_var_eq(decls, env, assumptions, v, r) => c)
──────── ("existential")
66124(prove_eq(decls, env, assumptions, Variable::ExistentialVar(v), r) => c)
normalize-l
LineCoverageSource
7014(prove_normalize(decls, env, assumptions, x) => Constrained(y, c))
713(prove_after(decls, c, assumptions, eq(y, z)) => c)
──────── ("normalize-l")
7318(prove_eq(decls, env, assumptions, x, z) => c)