fix: basic support for the new discriminant equality encoding at split

TODO: This is a temporary fix. We can do better.
This commit is contained in:
Leonardo de Moura 2022-04-29 15:29:39 -07:00
parent c241ef61b1
commit c19672e99e

View file

@ -148,7 +148,7 @@ def applyMatchSplitter (mvarId : MVarId) (matcherDeclName : Name) (us : Array Le
let numParams := matchEqns.splitterAltNumParams[i]
let (_, mvarId) ← introN mvarId numParams
trace[Meta.Tactic.split] "before unifyEqs\n{mvarId}"
match (← Cases.unifyEqs numEqs mvarId {}) with
match (← Cases.unifyEqs (numEqs + info.getNumDiscrEqs) mvarId {}) with
| none => return (i+1, mvarIds) -- case was solved
| some (mvarId, _) =>
let mvarId ← substDiscrEqs mvarId discrEqs