Reference · Lemmas behind operations-research checks
rainbow.math.lemmas.voter-readings
General lemmas: voter readings. The mathematical facts the corresponding checks rest on, each checked by the kernel.
signed/max-select-cases
signed/max-select-cases : (mz-x mz-y : ℚ) → proposition/conjunction (mz-x ≤ data/Bool.rec (fun x₄₈ => ℚ) mz-x mz-y (signed/decide-at-most mz-x mz-y)) (proposition/conjunction (mz-y ≤ data/Bool.rec (fun x₇₂ => ℚ) mz-x mz-y (signed/decide-at-most mz-x mz-y)) (proposition/disjunction (data/Bool.rec (fun x₈₄ => ℚ) mz-x mz-y (signed/decide-at-most mz-x mz-y) = mz-x) (data/Bool.rec (fun x₈₈ => ℚ) mz-x mz-y (signed/decide-at-most mz-x mz-y) = mz-y)))
= = signed/equivalent: equality of rational valuesℚ = signed/SignedRational≤ = signed/at-most
signed/voter-cell
signed/voter-cell : (vc-a vc-b vc-c vc-m vc-s vc-f vc-T : ℚ) (vc-hm : vc-m = data/Bool.rec (fun x₁₅₂ => ℚ) (data/Bool.rec (fun x₁₅₆ => ℚ) vc-b vc-a (signed/decide-at-most vc-a vc-b)) (data/Bool.rec (fun x₁₇₆ => ℚ) vc-c (data/Bool.rec (fun x₁₈₀ => ℚ) vc-a vc-b (signed/decide-at-most vc-a vc-b)) (signed/decide-at-most (data/Bool.rec (fun x₁₈₈ => ℚ) vc-a vc-b (signed/decide-at-most vc-a vc-b)) vc-c)) (signed/decide-at-most (data/Bool.rec (fun x₂₂₈ => ℚ) vc-b vc-a (signed/decide-at-most vc-a vc-b)) (data/Bool.rec (fun x₂₄₈ => ℚ) vc-c (data/Bool.rec (fun x₂₅₂ => ℚ) vc-a vc-b (signed/decide-at-most vc-a vc-b)) (signed/decide-at-most (data/Bool.rec (fun x₂₆₀ => ℚ) vc-a vc-b (signed/decide-at-most vc-a vc-b)) vc-c)))) (vc-hs : vc-s = data/Bool.rec (fun x₂₈₀ => ℚ) vc-a (data/Bool.rec (fun x₂₈₄ => ℚ) vc-b vc-c (signed/decide-at-most vc-b vc-c)) (signed/decide-at-most vc-a (data/Bool.rec (fun x₂₉₂ => ℚ) vc-b vc-c (signed/decide-at-most vc-b vc-c))) + signed/negate (data/Bool.rec (fun x₃₁₆ => ℚ) (data/Bool.rec (fun x₃₂₀ => ℚ) vc-c vc-b (signed/decide-at-most vc-b vc-c)) vc-a (signed/decide-at-most vc-a (data/Bool.rec (fun x₃₂₈ => ℚ) vc-c vc-b (signed/decide-at-most vc-b vc-c))))) (vc-hf : vc-f = data/Bool.rec (fun x₃₃₂ => ℚ) 0 1 (signed/decide-at-most vc-s vc-T)) → proposition/conjunction (disjunction) (proposition/conjunction (data/Bool.rec (fun x₃₇₂ => ℚ) vc-b vc-a (signed/decide-at-most vc-a vc-b) ≤ vc-m) (proposition/conjunction (vc-m ≤ data/Bool.rec (fun x₃₈₀ => ℚ) vc-a vc-b (signed/decide-at-most vc-a vc-b)) (conjunction))) where conjunction := proposition/conjunction (0 ≤ vc-s) (proposition/disjunction (proposition/conjunction (vc-s ≤ vc-T) (vc-f = 1)) (proposition/conjunction (vc-T < vc-s) (vc-f = 0))) where disjunction := proposition/disjunction (vc-m = vc-a) (proposition/disjunction (vc-m = vc-b) (vc-m = vc-c))
+ = signed/add0 = signed/zero1 = signed/one< = signed/less-than= = signed/equivalent: equality of rational valuesℚ = signed/SignedRational≤ = signed/at-most