Skip to content

Commit 3f2c602

Browse files
GiggleLiuclaude
andcommitted
feat: remove ILP→QUBO from untrusted edges
ILP<bool>→QUBO overhead is now accurate (no slack ambiguity). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent f560ad4 commit 3f2c602

2 files changed

Lines changed: 3 additions & 21 deletions

File tree

src/rules/analysis.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -269,10 +269,9 @@ pub fn compare_overhead(
269269

270270
/// Known reduction edges whose symbolic overhead is incomplete.
271271
///
272-
/// ILP → QUBO: the implementation adds slack bits per inequality constraint
273-
/// whose count depends on coefficient magnitudes, but the symbolic overhead
274-
/// only records `num_vars = num_vars`.
275-
const UNTRUSTED_EDGES: &[(&str, &str)] = &[("ILP", "QUBO")];
272+
/// With `ILP<bool>`, the ILP → QUBO overhead is now accurate (no bounds
273+
/// ambiguity), so no edges need to be excluded from analysis.
274+
const UNTRUSTED_EDGES: &[(&str, &str)] = &[];
276275

277276
/// Check whether every edge in a path has trustworthy symbolic overhead.
278277
fn path_is_symbolically_trustworthy(path: &ReductionPath) -> Result<(), String> {

src/unit_tests/rules/analysis.rs

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -260,23 +260,6 @@ fn test_find_dominated_rules_returns_known_set() {
260260
}
261261
}
262262

263-
#[test]
264-
fn test_ilp_qubo_paths_are_unknown() {
265-
let graph = ReductionGraph::new();
266-
let (_, unknown) = find_dominated_rules(&graph);
267-
268-
// Any path through ILP → QUBO should be reported as Unknown
269-
let ilp_qubo_unknowns: Vec<_> = unknown
270-
.iter()
271-
.filter(|u| u.reason.contains("ILP"))
272-
.collect();
273-
274-
assert!(
275-
!ilp_qubo_unknowns.is_empty(),
276-
"Expected at least one Unknown comparison involving ILP -> QUBO"
277-
);
278-
}
279-
280263
#[test]
281264
fn test_no_duplicate_primitive_rules_per_variant_pair() {
282265
use crate::rules::registry::ReductionEntry;

0 commit comments

Comments
 (0)