A solver answer becomes a certificate when independent computations agree. At this size an exhaustive search over the capacity-feasible partitions still runs, and it lands on the same minimum as this repo's exact lower bound and the solver's own best bound: the optimum is proven three ways, not trusted.

highlighted = computed this step

Exhaustive search

Eleven items have 678570 set partitions into unlabeled groups; unlike the five-by-four assignment's 120 candidates there is no tidy permutation count, but at this size a computer still enumerates the capacity-feasible partitions exactly. The search inspects 115700 feasible partitions (infeasible branches are pruned, not inspected) and finds a minimum of 4 bins, reached by 315 of them. Why: an independent check must not reuse the solver's code path, and this enumeration is included here as a third independent check.

B(11)=678570B(11)=678570
Certificate meets solverThe exhaustive search, the exact lower bound, and the solver's own bound all meet the bins used.lower bound 4 meets bins used 4B1D 36B 30K 30fill 96/100left 4B2A 48F 27J 24fill 99/100left 1B3H 42E 36C 19fill 97/100left 3B4G 42I 36fill 78/100left 22capacity 100total size 370lower bound 4bins used 4optimal for this instance

Own lower bound

The previous chapter's technique applies unchanged: total size 370 divided by capacity 100, rounded up, gives a lower bound of 4 bins. Why: every bin holds at most capacity, so no packing, found by any method, can use fewer bins than the total size demands; and unlike the enumeration, this bound keeps certifying when exhaustive search eventually stops being fast.

⌈370/100⌉=4\left\lceil 370 / 100\right\rceil=4
Certificate meets solverThe exhaustive search, the exact lower bound, and the solver's own bound all meet the bins used.lower bound 4 meets bins used 4B1D 36B 30K 30fill 96/100left 4B2A 48F 27J 24fill 99/100left 1B3H 42E 36C 19fill 97/100left 3B4G 42I 36fill 78/100left 22capacity 100total size 370lower bound 4bins used 4optimal for this instance

Three-way agreement

The solver reported objective 4 with best objective bound 4, the own lower bound is 4, and the exhaustive search minimum is 4: exact three-way agreement. Why: three independent computations landing on the same integer is a certificate, so this packing is provably optimal three ways, not trusted because a solver said so.

bound=objective=lower bound=enum=4\text{bound}=\text{objective}=\text{lower bound}=\text{enum}=4
Certificate meets solverThe exhaustive search, the exact lower bound, and the solver's own bound all meet the bins used.lower bound 4 meets bins used 4B1D 36B 30K 30fill 96/100left 4B2A 48F 27J 24fill 99/100left 1B3H 42E 36C 19fill 97/100left 3B4G 42I 36fill 78/100left 22capacity 100total size 370lower bound 4bins used 4optimal for this instance

Diagram note

The bars are the solver's decoded packing, relabeled B1 through B4 in ascending bin order, read together with the summary line: capacity, total size, lower bound, and bins used are all recomputed on every build. Pixel positions are rounded for layout; every item size, fill, total size, and bound is exact.

certified by enumeration and two bounds\text{certified by enumeration and two bounds}
Certificate meets solverThe exhaustive search, the exact lower bound, and the solver's own bound all meet the bins used.lower bound 4 meets bins used 4B1D 36B 30K 30fill 96/100left 4B2A 48F 27J 24fill 99/100left 1B3H 42E 36C 19fill 97/100left 3B4G 42I 36fill 78/100left 22capacity 100total size 370lower bound 4bins used 4optimal for this instance