Skip to content

Improve "Unification incomplete for case" diagnostics (#116)#138

Open
Rakshitha-Ireddi wants to merge 3 commits intoboyland:masterfrom
Rakshitha-Ireddi:fix/116-incomplete-unification-message
Open

Improve "Unification incomplete for case" diagnostics (#116)#138
Rakshitha-Ireddi wants to merge 3 commits intoboyland:masterfrom
Rakshitha-Ireddi:fix/116-incomplete-unification-message

Conversation

@Rakshitha-Ireddi
Copy link
Copy Markdown

Summary

Fixes #116.

The checker reported "Unification incomplete for case" with almost no usable detail when incomplete unification happened in the second unification step (cleanedCaseTerm.unify(candidate)), while the first step already used TermPrinter to point at a likely subexpression.

Changes

  • Add RuleCase.incompleteUnificationHint(...), reusing the same heuristic as the first unify path (pick the FV[...] side when possible, then print with TermPrinter).
  • If the highlighted subterm is a metavariable already fixed by an earlier premise (ctx.inputVars), append a short note (matches typos like using a stale metavariable instead of a fresh one).
  • Use this hint everywhere Errors.CASE_UNIFICATION_INCOMPLETE is reported: RuleCase, Rule.checkCaseApplication, and DerivationByAnalysis.caseAnalyze.
  • Adjust the Errors.CASE_UNIFICATION_INCOMPLETE prefix so the message reads clearly with the appended hint.

Authors

  • Ireddi Rakshitha
  • Yashwanth Devavarapu

Rakshitha Ireddi added 3 commits January 13, 2026 23:51
Complete React + TypeScript web application for visualizing SASyLF proof trees.

Features:

- Interactive D3.js tree visualization

- Beautiful purple gradient UI

- Drag-and-drop file upload

- Real-time node selection and details

- Zoom and pan controls

- 5 screenshots demonstrating functionality

Technology: React 18, TypeScript, D3.js, Vite, Tailwind CSS

Status: Fully tested and working
Copy link
Copy Markdown
Owner

@boyland boyland left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This Pull request is completely unacceptable. Please limit yourself to one topic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

"Unification incomplete for case" error message could be improved

2 participants