Solve/Verify: show whether a result is optimal
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- javascript, react
- Domain
- frontend
Research direction
Start with components/pageblocks/SolveRowReact.js and components/pageblocks/VerifyRowReact.js, then inspect how the frontend determines problem type and solver solverType. The issue proposes notes for exact, approximation, heuristic/stochastic, and decision solvers, plus an optimization-verification note; check the structured solve endpoint dependency and test dark mode and phone width. Done when the appropriate notes appear and decision problems show none.
Written by the indexing model from the issue text.
Description
Summary
In the Solve and Verify sections on the main page, show a short note saying whether a result is optimal, so users don't read a valid answer as the best answer.
Why
- A greedy or approximation solver can return a valid answer that isn't the best one (e.g. a vertex cover larger than the minimum), and nothing on the page says so.
- Verifiers for optimization problems check that an answer is valid, not that it's optimal (ReduxISU/Redux#603). "Verified" next to a Minimum Vertex Cover answer currently reads as "this is a minimum cover," which isn't what was checked.
Proposal
Solve section (components/pageblocks/SolveRowReact.js): under the solver output, show one of:
- "Optimal: this solver is exact, so this is a best possible answer."
- "Not guaranteed optimal: approximation solver, within 2× of optimal." (using the approximation ratio when the backend provides it)
- "Not guaranteed optimal: heuristic/stochastic solver."
- nothing, for decision problems, where "optimal" doesn't apply
Verify section (components/pageblocks/VerifyRowReact.js): for optimization problems, add a note like "Checks that this is a valid answer. It does not check that it's the best one."
Data source: the structured solve endpoint in ReduxISU/Redux (linked in a comment below) returns optimal directly. Until that exists, the note can be worked out from what the frontend already has: the solver's solverType plus whether the problem is decision or optimization.
Check dark mode and phone width for the new text (#302).
Related
- ReduxISU/Redux#603: optimization verifier contract
- ReduxISU/Redux#605: "no solution" vs. empty-set answers
- #255: Solver Type tags in the solver dropdown
Issue Handling
New issue, not tied to an existing one.
- Dominant language
- JavaScript
- Stars
- 3
- Forks
- 18
- Avg merge
- 23h 39m
- Merged PRs (30d)
- 39
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ReduxISU/Redux_GUI
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
All issues in ReduxISU/Redux_GUI
Similar issues
-
bug needs triage P3
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
pbakaus/impeccable#1143 ·
Maintainers usually reply within 1 day
-
status: waiting for maintainer
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
mui/material-ui#49547 ·
Maintainers usually reply within 1 day
-
next() is called twice when the request closes after busboy fails to startPossibly taken @NgoQuocViet2001 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
[2.x] extension-manager: translation keys that changed meaning keep their old namesPossibly taken A pull request linked to this issue is open or already merged. Opentype/bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day