Commit 0ac771c
committed
Merge master + extend check_with_incremental_cadical to handle assumptions
Integrates the context_delegates PR (#607) with our incremental CaDiCaL
branch, then unifies into a single incremental CaDiCaL path that handles
both regular check-sat and check-sat-assuming.
Merge conflict resolution:
- context.h: keep both check_with_incremental_cadical (#if HAVE_CADICAL)
and check_with_incremental_delegate (for non-CaDiCaL incremental delegates).
- yices_smt2.c: drop the narrow CaDiCaL-only error gate; incremental_delegate()
now validates inside context_solver.c.
Unified CaDiCaL incremental path:
- solve_with_incremental_cadical gains (nassumptions, assumptions, failed)
parameters: caller-provided assumptions are forwarded to ccadical_assume
(via ic_lit2dimacs for BVA-safe mapping), and failed assumptions are
collected via ccadical_failed on UNSAT.
- check_with_incremental_cadical gains the same parameters and routes
check-sat-assuming directly through the persistent CaDiCaL instance,
bypassing the selector-frame machinery and its implicit x+1 mapping.
- Dispatch in check_context_with_term_assumptions routes SAT_DELEGATE_CADICAL
to check_with_incremental_cadical unconditionally, so both regular push/pop
and check-sat-assuming use the explicit bvar_to_dimacs[] map.
- Other incremental delegates (cryptominisat with selector-frames) continue
to use check_with_incremental_delegate.44 files changed
Lines changed: 2925 additions & 152 deletions
File tree
- doc
- manual
- sphinx/source
- src
- api
- context
- frontend
- smt2
- include
- mcsat
- solvers/cdcl
- tests
- api
- regress
- bv
- mcsat
- lra
- nra
- incremental
- wd
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
305 | 305 | | |
306 | 306 | | |
307 | 307 | | |
| 308 | + | |
| 309 | + | |
308 | 310 | | |
309 | 311 | | |
310 | 312 | | |
311 | 313 | | |
312 | 314 | | |
313 | 315 | | |
314 | 316 | | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
315 | 323 | | |
316 | 324 | | |
317 | 325 | | |
| |||
326 | 334 | | |
327 | 335 | | |
328 | 336 | | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
329 | 343 | | |
330 | 344 | | |
331 | 345 | | |
| |||
335 | 349 | | |
336 | 350 | | |
337 | 351 | | |
338 | | - | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
339 | 355 | | |
340 | 356 | | |
341 | 357 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1455 | 1455 | | |
1456 | 1456 | | |
1457 | 1457 | | |
| 1458 | + | |
| 1459 | + | |
| 1460 | + | |
| 1461 | + | |
| 1462 | + | |
| 1463 | + | |
| 1464 | + | |
| 1465 | + | |
| 1466 | + | |
| 1467 | + | |
| 1468 | + | |
| 1469 | + | |
| 1470 | + | |
| 1471 | + | |
| 1472 | + | |
| 1473 | + | |
| 1474 | + | |
| 1475 | + | |
| 1476 | + | |
| 1477 | + | |
| 1478 | + | |
| 1479 | + | |
| 1480 | + | |
| 1481 | + | |
| 1482 | + | |
| 1483 | + | |
| 1484 | + | |
| 1485 | + | |
| 1486 | + | |
| 1487 | + | |
| 1488 | + | |
| 1489 | + | |
| 1490 | + | |
| 1491 | + | |
| 1492 | + | |
| 1493 | + | |
| 1494 | + | |
| 1495 | + | |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
| 1516 | + | |
| 1517 | + | |
1458 | 1518 | | |
1459 | | - | |
1460 | | - | |
1461 | | - | |
1462 | | - | |
1463 | | - | |
1464 | | - | |
1465 | | - | |
1466 | | - | |
1467 | | - | |
| 1519 | + | |
| 1520 | + | |
| 1521 | + | |
| 1522 | + | |
1468 | 1523 | | |
1469 | 1524 | | |
1470 | 1525 | | |
| |||
3652 | 3707 | | |
3653 | 3708 | | |
3654 | 3709 | | |
| 3710 | + | |
3655 | 3711 | | |
3656 | 3712 | | |
3657 | 3713 | | |
| |||
3772 | 3828 | | |
3773 | 3829 | | |
3774 | 3830 | | |
3775 | | - | |
| 3831 | + | |
| 3832 | + | |
| 3833 | + | |
| 3834 | + | |
| 3835 | + | |
| 3836 | + | |
| 3837 | + | |
3776 | 3838 | | |
3777 | 3839 | | |
3778 | 3840 | | |
| |||
3864 | 3926 | | |
3865 | 3927 | | |
3866 | 3928 | | |
3867 | | - | |
| 3929 | + | |
| 3930 | + | |
| 3931 | + | |
| 3932 | + | |
3868 | 3933 | | |
3869 | 3934 | | |
3870 | 3935 | | |
| |||
4641 | 4706 | | |
4642 | 4707 | | |
4643 | 4708 | | |
| 4709 | + | |
4644 | 4710 | | |
4645 | 4711 | | |
4646 | 4712 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
226 | 226 | | |
227 | 227 | | |
228 | 228 | | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
229 | 276 | | |
230 | 277 | | |
231 | 278 | | |
| |||
288 | 335 | | |
289 | 336 | | |
290 | 337 | | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
291 | 363 | | |
292 | 364 | | |
293 | 365 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
77 | 79 | | |
78 | 80 | | |
79 | 81 | | |
80 | | - | |
| 82 | + | |
81 | 83 | | |
82 | 84 | | |
83 | 85 | | |
84 | 86 | | |
85 | 87 | | |
86 | 88 | | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
87 | 94 | | |
88 | 95 | | |
89 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
472 | 472 | | |
473 | 473 | | |
474 | 474 | | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
0 commit comments