Building OptimalOTS.Challenge.UpperRiscv ⚠ [2703/2703] Built OptimalOTS.Challenge.UpperRiscv (3.3s) warning: OptimalOTS/Challenge/UpperRiscv.lean:9:18: declaration uses `sorry` warning: OptimalOTS/Challenge/UpperRiscv.lean:13:8: declaration uses `sorry` Build completed successfully (2703 jobs). Exporting #[OptimalOTS.Challenge.UpperRiscv.certificate, propext, Quot.sound, Classical.choice, Nat.add, Nat.sub, Nat.mul, Nat.pow, Nat.gcd, Nat.div, Nat.mod, Nat.beq, Nat.ble, Nat.land, Nat.lor, Nat.xor, Nat.shiftLeft, Nat.shiftRight, String.ofList, Char.ofNat, List, eagerReduce, OptimalOTS.Challenge.UpperRiscv.submission] from OptimalOTS.Challenge.UpperRiscv Building Submissions.UpperRiscv.Solution ✔ [5878/6040] Built Submissions.UpperRiscv.TypedScheme (2.0s) ✔ [8813/8880] Built Submissions.UpperRiscv.Semantics (2.6s) ✔ [8814/8880] Built Submissions.UpperRiscv.MachineCost (2.8s) ✔ [8815/8880] Built Submissions.UpperRiscv.Cache (2.9s) ✔ [8816/8880] Built Submissions.UpperRiscv.IUB (2.9s) ✔ [8817/8880] Built Submissions.UpperRiscv.BlockExecution (4.1s) ✔ [8818/8880] Built Submissions.UpperRiscv.Program (7.1s) ✔ [8819/8880] Built Submissions.UpperRiscv.Count (8.2s) ✔ [8820/8880] Built Submissions.UpperRiscv.Digits (8.2s) ✔ [8821/8880] Built Submissions.UpperRiscv.Master (3.3s) ✔ [8822/8880] Built Submissions.UpperRiscv.AssemblyMacros (2.6s) ⚠ [8823/8880] Built Submissions.UpperRiscv.Names (8.7s) warning: Submissions/UpperRiscv/Names.lean:107:37: This simp argument is unused: Finset.mem_insert Hint: Omit it from the simp argument list. [apply] simp only [parents, child, prev, Finset.mem_singleton, Finset.mem_image, Finset.mem_univ, true_and, Finset.notMem_empty, Option.some.injEq, reduceCtorEq, Name.ci.injEq, Name.ch.injEq, Name.cv.injEq, Fin.ext_iff, Fin.val_zero, iff_true, iff_false, false_iff, or_false, exists_false] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Names.lean:110:20: This simp argument is unused: iff_true Hint: Omit it from the simp argument list. [apply] simp only [parents, child, prev, Finset.mem_insert, Finset.mem_singleton, Finset.mem_image, Finset.mem_univ, true_and, Finset.notMem_empty, Option.some.injEq, reduceCtorEq, Name.ci.injEq, Name.ch.injEq, Name.cv.injEq, Fin.ext_iff, Fin.val_zero, iff_false, false_iff, or_false, exists_false] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Names.lean:110:52: This simp argument is unused: or_false Hint: Omit it from the simp argument list. [apply] simp only [parents, child, prev, Finset.mem_insert, Finset.mem_singleton, Finset.mem_image, Finset.mem_univ, true_and, Finset.notMem_empty, Option.some.injEq, reduceCtorEq, Name.ci.injEq, Name.ch.injEq, Name.cv.injEq, Fin.ext_iff, Fin.val_zero, iff_true, iff_false, false_iff, exists_false] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Names.lean:119:64: This simp argument is unused: reduceCtorEq Hint: Omit it from the simp argument list. [apply] simp only [Option.some.injEq] at h Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ✔ [8824/8880] Built Submissions.UpperRiscv.Refines (1.9s) ⚠ [8825/8880] Built Submissions.UpperRiscv.Tree (2.6s) warning: Submissions/UpperRiscv/Tree.lean:385:54: Variable name `hA` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hA Note: This linter can be disabled with `set_option linter.unusedVariables false` ⚠ [8826/8880] Built Submissions.UpperRiscv.RowIneq (14s) warning: Submissions/UpperRiscv/RowIneq.lean:47:5: Variable name `hr0` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hr0 Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/RowIneq.lean:47:19: Variable name `hr1` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hr1 Note: This linter can be disabled with `set_option linter.unusedVariables false` ✔ [8827/8880] Built Submissions.UpperRiscv.Cuts (3.9s) ✔ [8828/8880] Built Submissions.UpperRiscv.Valid (203s) ✔ [8829/8880] Built Submissions.UpperRiscv.FixedChoice (4.5s) ✔ [8830/8880] Built Submissions.UpperRiscv.GScheme (4.7s) ✔ [8831/8880] Built Submissions.UpperRiscv.PackFiber (4.9s) ✔ [8832/8880] Built Submissions.UpperRiscv.Scheme (5.0s) ⚠ [8833/8880] Built Submissions.UpperRiscv.Adapter (5.7s) warning: Submissions/UpperRiscv/Adapter.lean:76:37: This simp argument is unused: experiment Hint: Omit it from the simp argument list. [apply] simp only [TypedScheme.experiment, GScheme.toAlgorithm, toDAGAdversary] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Adapter.lean:92:37: This simp argument is unused: experiment Hint: Omit it from the simp argument list. [apply] simp only [TypedScheme.experiment, GScheme.toAlgorithm, fromDAGAdversary] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ✔ [8834/8880] Built Submissions.UpperRiscv.PackCount (5.7s) ✔ [8835/8880] Built Submissions.UpperRiscv.KeygenSupport (5.9s) ✔ [8836/8880] Built Submissions.UpperRiscv.Reconstruct (6.8s) ⚠ [8837/8880] Built Submissions.UpperRiscv.Lanes (11s) warning: Submissions/UpperRiscv/Lanes.lean:116:25: This simp argument is unused: show (0 : ℕ) < 2 by norm_num Hint: Omit it from the simp argument list. [apply] simp only [show (1 : ℕ) < 2 by norm_num, show ¬(2 : ℕ) < 2 by norm_num, show ¬(3 : ℕ) < 2 by norm_num, if_true, if_false, show (2 : ℕ) = 2 from rfl, show ¬(3 : ℕ) = 2 by norm_num, show (0 : ℕ) < 2 by norm_num, show (1 : ℕ) < 2 by norm_num, and_mask7C, and_mask3C, and_mask3C2] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Lanes.lean:116:55: This simp argument is unused: show (1 : ℕ) < 2 by norm_num Hint: Omit it from the simp argument list. [apply] simp only [show (0 : ℕ) < 2 by norm_num, show ¬(2 : ℕ) < 2 by norm_num, show ¬(3 : ℕ) < 2 by norm_num, if_true, if_false, show (2 : ℕ) = 2 from rfl, show ¬(3 : ℕ) = 2 by norm_num, show (0 : ℕ) < 2 by norm_num, show (1 : ℕ) < 2 by norm_num, and_mask7C, and_mask3C, and_mask3C2] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Lanes.lean:118:6: This simp argument is unused: show (2 : ℕ) = 2 from rfl Hint: Omit it from the simp argument list. [apply] simp only [show (0 : ℕ) < 2 by norm_num, show (1 : ℕ) < 2 by norm_num, show ¬(2 : ℕ) < 2 by norm_num, show ¬(3 : ℕ) < 2 by norm_num, if_true, if_false, show ¬(3 : ℕ) = 2 by norm_num, show (0 : ℕ) < 2 by norm_num, show (1 : ℕ) < 2 by norm_num, and_mask7C, and_mask3C, and_mask3C2] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Lanes.lean:126:6: This simp argument is unused: show (2 : ℕ) = 2 from rfl Hint: Omit it from the simp argument list. [apply] simp only [show (0 : ℕ) < 2 by norm_num, show (1 : ℕ) < 2 by norm_num, show ¬(2 : ℕ) < 2 by norm_num, show ¬(3 : ℕ) < 2 by norm_num, if_true, if_false, show ¬(3 : ℕ) = 2 by norm_num, and_mask7C, and_mask3C, and_mask3C2] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ✔ [8838/8880] Built Submissions.UpperRiscv.Keygen (7.3s) ✔ [8839/8880] Built Submissions.UpperRiscv.Deterministic (4.4s) ✔ [8840/8880] Built Submissions.UpperRiscv.AlgorithmCosts (4.9s) ✔ [8841/8880] Built Submissions.UpperRiscv.SignIdx (6.1s) ✔ [8842/8880] Built Submissions.UpperRiscv.Resources (5.3s) ✔ [8843/8880] Built Submissions.UpperRiscv.WireAdapter (5.5s) ✔ [8844/8880] Built Submissions.UpperRiscv.EncCharges (4.8s) ✔ [8845/8880] Built Submissions.UpperRiscv.Correctness (5.9s) ⚠ [8846/8880] Built Submissions.UpperRiscv.Values (7.6s) warning: Submissions/UpperRiscv/Values.lean:53:15: This simp argument is unused: BitVec.getLsbD_extractLsb' Hint: Omit it from the simp argument list. [apply] simp [trunc, hi] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Values.lean:114:48: This simp argument is unused: BitVec.toNat_cast Hint: Omit it from the simp argument list. [apply] simp only [kindOf, NodeKind.value, detVal_cv] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/Values.lean:437:14: Used `tac1 <;> tac2` where `(tac1; tac2)` would suffice Note: This linter can be disabled with `set_option linter.unnecessarySeqFocus false` warning: Submissions/UpperRiscv/Values.lean:609:77: Try `simp at hs` instead of `simpa using hs` Note: This linter can be disabled with `set_option linter.unnecessarySimpa false` warning: Submissions/UpperRiscv/Values.lean:609:77: Try `simp at hs` instead of `simpa using hs` Note: This linter can be disabled with `set_option linter.unnecessarySimpa false` warning: Submissions/UpperRiscv/Values.lean:609:77: Try `simp at hs` instead of `simpa using hs` Note: This linter can be disabled with `set_option linter.unnecessarySimpa false` warning: Submissions/UpperRiscv/Values.lean:609:77: Try `simp at hs` instead of `simpa using hs` Note: This linter can be disabled with `set_option linter.unnecessarySimpa false` ✔ [8847/8880] Built Submissions.UpperRiscv.Events (5.0s) ⚠ [8848/8880] Built Submissions.UpperRiscv.SignRho (8.0s) warning: Submissions/UpperRiscv/SignRho.lean:92:46: Variable name `hM` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hM Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/SignRho.lean:313:27: This simp argument is unused: mul_add Hint: Omit it from the simp argument list. [apply] simp only [Finset.mul_sum] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ⚠ [8849/8880] Built Submissions.UpperRiscv.Resample (5.6s) warning: Submissions/UpperRiscv/Resample.lean:35:18: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:86:49: Variable name `hs` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hs Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:195:53: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:227:52: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:374:44: Variable name `hA` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hA Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:384:43: Variable name `hA` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hA Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:539:12: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:589:64: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/Resample.lean:601:12: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` ✔ [8850/8880] Built Submissions.UpperRiscv.MachineMemory (19s) ⚠ [8851/8880] Built Submissions.UpperRiscv.Rows (4.9s) warning: Submissions/UpperRiscv/Rows.lean:51:10: This simp argument is unused: BitVec.getLsbD_setWidth Hint: Omit it from the simp argument list. [apply] simp [h] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ⚠ [8852/8880] Built Submissions.UpperRiscv.GoodRec (4.6s) warning: Submissions/UpperRiscv/GoodRec.lean:33:45: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/GoodRec.lean:49:45: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` warning: Submissions/UpperRiscv/GoodRec.lean:100:17: This simp argument is unused: Fin.val_mk Hint: Omit it from the simp argument list. [apply] simp only at h3 Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/GoodRec.lean:239:44: Variable name `hp` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hp Note: This linter can be disabled with `set_option linter.unusedVariables false` ✔ [8853/8880] Built Submissions.UpperRiscv.LoaderProof (5.6s) ✔ [8854/8880] Built Submissions.UpperRiscv.HashOutput (4.2s) ✔ [8855/8880] Built Submissions.UpperRiscv.CopyProof (4.4s) ⚠ [8856/8880] Built Submissions.UpperRiscv.RowPotential (8.9s) warning: Submissions/UpperRiscv/RowPotential.lean:177:0: automatically included section variable(s) unused in theorem `OptimalOTS.Row.sum_u_le`: hP consider restructuring your `variable` declarations so that the variables are not in scope or explicitly omit them: omit hP in theorem ... Note: This linter can be disabled with `set_option linter.unusedSectionVars false` warning: Submissions/UpperRiscv/RowPotential.lean:191:0: automatically included section variable(s) unused in theorem `OptimalOTS.Row.N_le`: hc consider restructuring your `variable` declarations so that the variables are not in scope or explicitly omit them: omit hc in theorem ... Note: This linter can be disabled with `set_option linter.unusedSectionVars false` warning: Submissions/UpperRiscv/RowPotential.lean:270:59: Used `tac1 <;> tac2` where `(tac1; tac2)` would suffice Note: This linter can be disabled with `set_option linter.unnecessarySeqFocus false` warning: Submissions/UpperRiscv/RowPotential.lean:315:59: Used `tac1 <;> tac2` where `(tac1; tac2)` would suffice Note: This linter can be disabled with `set_option linter.unnecessarySeqFocus false` warning: Submissions/UpperRiscv/RowPotential.lean:524:0: automatically included section variable(s) unused in theorem `OptimalOTS.sum_idxOf`: hc consider restructuring your `variable` declarations so that the variables are not in scope or explicitly omit them: omit hc in theorem ... Note: This linter can be disabled with `set_option linter.unusedSectionVars false` ⚠ [8857/8880] Built Submissions.UpperRiscv.MachineFacts (4.3s) warning: Submissions/UpperRiscv/MachineFacts.lean:81:4: This simp argument is unused: decide_true Hint: Omit it from the simp argument list. [apply] simp only [show (8 : Word) = W 8 from rfl, show (16 : Word) = W 16 from rfl, show (24 : Word) = W 24 from rfl, W_add, dword_ok a h1 (by omega) h3, dword_ok (a + 8) (by omega) (by omega) (by omega), dword_ok (a + 16) (by omega) (by omega) (by omega), dword_ok (a + 24) (by omega) (by omega) (by omega), Bool.and_self] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ⚠ [8858/8880] Built Submissions.UpperRiscv.Potentials (4.6s) warning: Submissions/UpperRiscv/Potentials.lean:122:38: Variable name `ξ` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _ξ Note: This linter can be disabled with `set_option linter.unusedVariables false` ✔ [8859/8880] Built Submissions.UpperRiscv.StageB (5.1s) ✔ [8860/8880] Built Submissions.UpperRiscv.Assembly (4.4s) ✔ [8861/8880] Built Submissions.UpperRiscv.Main (4.1s) ⚠ [8862/8880] Built Submissions.UpperRiscv.Availability (4.6s) warning: Submissions/UpperRiscv/Availability.lean:58:5: Variable name `hM` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hM Note: This linter can be disabled with `set_option linter.unusedVariables false` ✔ [8863/8880] Built Submissions.UpperRiscv.ForestAlgorithm (3.8s) ✔ [8864/8880] Built Submissions.UpperRiscv.Wire (3.8s) ✔ [8865/8880] Built Submissions.UpperRiscv.Layout (3.8s) ✔ [8866/8880] Built Submissions.UpperRiscv.ForestVerifier (4.8s) ✔ [8867/8880] Built Submissions.UpperRiscv.ForestVerifierProof (3.0s) ✔ [8868/8880] Built Submissions.UpperRiscv.Reader (3.0s) ✔ [8869/8880] Built Submissions.UpperRiscv.ChainContext (4.1s) ⚠ [8870/8880] Built Submissions.UpperRiscv.ChainPrologue (4.7s) warning: Submissions/UpperRiscv/ChainPrologue.lean:70:15: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x10 = Reg.x28) by decide, show ¬(Reg.x10 = Reg.x12) by decide, l24, step0] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:70:84: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x10 = Reg.x28) by decide, show ¬(Reg.x10 = Reg.x12) by decide, l24, step0] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:74:15: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x12 = Reg.x28) by decide, show ¬(Reg.x12 = Reg.x10) by decide, l24, step0, s8] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:74:84: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x12 = Reg.x28) by decide, show ¬(Reg.x12 = Reg.x10) by decide, l24, step0, s8] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:77:74: This simp argument is unused: MachineState.getMem_setPC Hint: Omit it from the simp argument list. [apply] simp only [execInstrBr, MachineState.getReg_setPC, getReg_setReg_ite, MachineState.getMem_setReg] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:78:6: This simp argument is unused: MachineState.getMem_setReg Hint: Omit it from the simp argument list. [apply] simp only [execInstrBr, MachineState.getReg_setPC, getReg_setReg_ite, MachineState.getMem_setPC] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:79:15: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x29 = Reg.x12) by decide, show ¬(Reg.x29 = Reg.x10) by decide, data, lane] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainPrologue.lean:79:84: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x29 = Reg.x12) by decide, show ¬(Reg.x29 = Reg.x10) by decide, data, lane] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ⚠ [8871/8880] Built Submissions.UpperRiscv.IndexLanes (7.1s) warning: Submissions/UpperRiscv/IndexLanes.lean:61:4: Unused tactic linter: `(try constructor)` does nothing Note: This linter can be disabled with `set_option linter.unusedTactic false` ✔ [8872/8880] Built Submissions.UpperRiscv.ChainSteps (4.6s) ⚠ [8873/8880] Built Submissions.UpperRiscv.IndexArith (5.3s) warning: Submissions/UpperRiscv/IndexArith.lean:135:53: Variable name `hk` is not explicitly referenced. Hint: The binding can be removed (if unused) or named `_` (if used implicitly). Alternatively, prefix the name with `_` to silence this warning: [apply] _hk Note: This linter can be disabled with `set_option linter.unusedVariables false` ⚠ [8874/8880] Built Submissions.UpperRiscv.ChainBlock (6.6s) warning: Submissions/UpperRiscv/ChainBlock.lean:30:25: This simp argument is unused: tripleN Hint: Omit it from the simp argument list. [apply] simp only [chainNodes, List.finRange, List.range] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainBlock.lean:158:29: This simp argument is unused: lowCat Hint: Omit it from the simp argument list. [apply] simp only [Nat.sub_self] at next ⊢ Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/ChainBlock.lean:407:9: Unused tactic linter: `unfold slotAddr` does nothing Note: This linter can be disabled with `set_option linter.unusedTactic false` warning: Submissions/UpperRiscv/ChainBlock.lean:407:26: Unused tactic linter: `omega` does nothing Note: This linter can be disabled with `set_option linter.unusedTactic false` warning: Submissions/UpperRiscv/ChainBlock.lean:407:26: this tactic is never executed Note: This linter can be disabled with `set_option linter.unreachableTactic false` ✔ [8875/8880] Built Submissions.UpperRiscv.ChainPhase (5.9s) ⚠ [8876/8880] Built Submissions.UpperRiscv.IndexPhase (12s) warning: Submissions/UpperRiscv/IndexPhase.lean:122:53: This simp argument is unused: l16 Hint: Omit it from the simp argument list. [apply] simp [execInstrBr, getReg_setReg_ite] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:124:53: This simp argument is unused: l0 Hint: Omit it from the simp argument list. [apply] simp [execInstrBr, getReg_setReg_ite] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:126:53: This simp argument is unused: l8 Hint: Omit it from the simp argument list. [apply] simp [execInstrBr, getReg_setReg_ite] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:307:50: This simp argument is unused: Ne.symm hr Hint: Omit it from the simp argument list. [apply] simp [lenBlock, execInstrBr, getReg_setReg_ite, hr, S2_regs] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:313:13: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x12 = Reg.x6) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:313:82: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x12 = Reg.x6) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:314:4: This simp argument is unused: if_false Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, show ¬(Reg.x12 = Reg.x6) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:314:14: This simp argument is unused: show ¬(Reg.x12 = Reg.x6) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:513:13: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x11 = Reg.x29) by decide, show ¬(Reg.x11 = Reg.x10) by decide, show ¬(Reg.x29 = Reg.x10) by decide, show ¬(Reg.x12 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x29) by decide, getReg_x0', x12, x9, minus24] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/IndexPhase.lean:513:82: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x11 = Reg.x29) by decide, show ¬(Reg.x11 = Reg.x10) by decide, show ¬(Reg.x29 = Reg.x10) by decide, show ¬(Reg.x12 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x29) by decide, getReg_x0', x12, x9, minus24] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ⚠ [8877/8880] Built Submissions.UpperRiscv.RootPhase (19s) warning: Submissions/UpperRiscv/RootPhase.lean:97:78: This simp argument is unused: execInstrBr Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, MachineState.getReg_setPC, getReg_setReg_ite, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:98:6: This simp argument is unused: MachineState.getReg_setPC Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, execInstrBr, getReg_setReg_ite, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:98:33: This simp argument is unused: getReg_setReg_ite Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, execInstrBr, MachineState.getReg_setPC, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:107:14: This simp argument is unused: Ne.symm hr Hint: Omit it from the simp argument list. [apply] simp [hr] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:112:15: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x12 = Reg.x26) by decide, x12, l0, BitVec.add_zero] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:112:84: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x12 = Reg.x26) by decide, x12, l0, BitVec.add_zero] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:112:95: This simp argument is unused: if_false Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, show ¬(Reg.x12 = Reg.x26) by decide, x12, l0, BitVec.add_zero] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:113:6: This simp argument is unused: show ¬(Reg.x12 = Reg.x26) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, x12, l0, BitVec.add_zero] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:149:80: This simp argument is unused: execInstrBr Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, MachineState.getReg_setPC, getReg_setReg_ite, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:150:8: This simp argument is unused: MachineState.getReg_setPC Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, execInstrBr, getReg_setReg_ite, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:150:35: This simp argument is unused: getReg_setReg_ite Hint: Omit it from the simp argument list. [apply] simp only [Riscv.LinearReady, Riscv.linearInstruction, Riscv.memoryReady, execInstrBr, MachineState.getReg_setPC, true_and, and_true] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:159:16: This simp argument is unused: Ne.symm hr Hint: Omit it from the simp argument list. [apply] simp [hr] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:164:17: This simp argument is unused: true_and Hint: Omit it from the simp argument list. [apply] simp only [ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false, show ¬(Reg.x12 = Reg.x28) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:164:86: This simp argument is unused: false_and Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, if_false, show ¬(Reg.x12 = Reg.x28) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:164:97: This simp argument is unused: if_false Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, show ¬(Reg.x12 = Reg.x28) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:165:8: This simp argument is unused: show ¬(Reg.x12 = Reg.x28) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, and_true, false_and, if_false] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:267:13: This simp argument is unused: show (28 : ℕ) - 2 = 26 from rfl Hint: Omit it from the simp argument list. [apply] simp only [show (28 : ℕ) - 1 = 27 from rfl] at hd ht Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:303:10: This simp argument is unused: Ne.symm h10 Hint: Omit it from the simp argument list. [apply] simp [Ne.symm h11, Ne.symm h12, h10, h11, h12] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:303:23: This simp argument is unused: Ne.symm h11 Hint: Omit it from the simp argument list. [apply] simp [Ne.symm h10, Ne.symm h12, h10, h11, h12] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:303:36: This simp argument is unused: Ne.symm h12 Hint: Omit it from the simp argument list. [apply] simp [Ne.symm h10, Ne.symm h11, h10, h11, h12] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:310:6: This simp argument is unused: show ¬(Reg.x9 = Reg.x11) by decide Hint: Omit it from the simp argument list. [apply] simp only [show ¬(Reg.x10 = Reg.x11) by decide, show ¬(Reg.x10 = Reg.x12) by decide, false_and, if_false, true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, show ¬(Reg.x9 = Reg.x12) by decide, show ¬(Reg.x9 = Reg.x10) by decide, inv.ctx.payloadReg] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:310:43: This simp argument is unused: show ¬(Reg.x9 = Reg.x12) by decide Hint: Omit it from the simp argument list. [apply] simp only [show ¬(Reg.x10 = Reg.x11) by decide, show ¬(Reg.x10 = Reg.x12) by decide, false_and, if_false, true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, show ¬(Reg.x9 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x10) by decide, inv.ctx.payloadReg] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:311:6: This simp argument is unused: show ¬(Reg.x9 = Reg.x10) by decide Hint: Omit it from the simp argument list. [apply] simp only [show ¬(Reg.x10 = Reg.x11) by decide, show ¬(Reg.x10 = Reg.x12) by decide, false_and, if_false, true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, show ¬(Reg.x9 = Reg.x11) by decide, show ¬(Reg.x9 = Reg.x12) by decide, inv.ctx.payloadReg] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:321:6: This simp argument is unused: show ¬(Reg.x13 = Reg.x12) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, false_and, if_false, show ¬(Reg.x13 = Reg.x10) by decide, show ¬(Reg.x11 = Reg.x12) by decide, show ¬(Reg.x13 = Reg.x11) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:321:44: This simp argument is unused: show ¬(Reg.x13 = Reg.x11) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, false_and, if_false, show ¬(Reg.x13 = Reg.x10) by decide, show ¬(Reg.x11 = Reg.x12) by decide, show ¬(Reg.x13 = Reg.x12) by decide] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` warning: Submissions/UpperRiscv/RootPhase.lean:330:6: This simp argument is unused: show ¬(Reg.x29 = Reg.x12) by decide Hint: Omit it from the simp argument list. [apply] simp only [true_and, ne_eq, reduceCtorEq, not_false_eq_true, if_true, false_and, if_false, show ¬(Reg.x29 = Reg.x10) by decide, show ¬(Reg.x29 = Reg.x11) by decide, inv.ctx.dataReg] Note: This linter can be disabled with `set_option linter.unusedSimpArgs false` ✔ [8878/8880] Built Submissions.UpperRiscv.Verifier (4.2s) ✔ [8879/8880] Built Submissions.UpperRiscv.Candidate (3.7s) ✔ [8880/8880] Built Submissions.UpperRiscv.Solution (3.7s) Build completed successfully (8880 jobs). Exporting #[OptimalOTS.Challenge.UpperRiscv.certificate, propext, Quot.sound, Classical.choice, Nat.add, Nat.sub, Nat.mul, Nat.pow, Nat.gcd, Nat.div, Nat.mod, Nat.beq, Nat.ble, Nat.land, Nat.lor, Nat.xor, Nat.shiftLeft, Nat.shiftRight, String.ofList, Char.ofNat, List, eagerReduce, OptimalOTS.Challenge.UpperRiscv.submission] from Submissions.UpperRiscv.Solution Running Lean default kernel on solution. Lean default kernel accepts the solution Your solution is okay!