Skip to content

pred reduce/path --to ILP fails: should auto-resolve default variant ILP/i32 #875

@isPANN

Description

@isPANN

Problem

pred reduce problem.json --to ILP and pred path <Source> ILP fail with "No witness-capable reduction path", even when a valid reduction to ILP<i32> exists. The working command requires the full variant spelling ILP/i32.

Steps to Reproduce

pred create --example SchedulingToMinimizeWeightedCompletionTime -o /tmp/scheduling.json

# This works (auto-resolves variant):
pred solve /tmp/scheduling.json

# These fail:
pred reduce /tmp/scheduling.json --to ILP
pred path SchedulingToMinimizeWeightedCompletionTime ILP

# This works:
pred reduce /tmp/scheduling.json --to ILP/i32 -o /tmp/reduced.json
pred path SchedulingToMinimizeWeightedCompletionTime ILP/i32

Expected Behavior

pred reduce --to ILP and pred path ... ILP should resolve the bare name ILP to its default variant (ILP/i32), the same way pred solve auto-discovers the reduction path.

Additional Context

  • The error hint in reduce.rs recommends pred path <SRC> ILP -o path.json, which also fails — leading the user into a loop.
  • This affects all → ILP reductions, not just a specific problem.
  • pred show ILP displays the variant information, but nothing in the error message suggests trying ILP/i32.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions