google-deepmind / google-deepmind/formal-conjectures

Does the Partition Principle imply the Axiom of Choice over ZF?

Open
#4,581 0 comments 0 reactions 0 assignees View on GitHub
new conjecture
Dominant language
Lean
Stars
1.3k
Forks
485
Avg merge
1d 20h
Merged PRs (30d)
327

Description

### What is the conjecture

> Does the Partition Principle imply the Axiom of Choice over ZF?

The **Partition Principle (PP)** states that whenever there is a surjection
`f : Y → X`, there is an injection `g : X → Y`. The Axiom of Choice implies PP because a choice
function for the fibers of `f` gives an injective right inverse. The converse is a longstanding open
question.

References:

- B. Banaschewski and G. H. Moore, [The dual Cantor-Bernstein theorem and the partition
principle](https://doi.org/10.1305/ndjfl/1093635502), *Notre Dame Journal of Formal Logic* 31(3),
1990.
- A. Karagila, [On the Partition Principle](https://karagila.org/2014/on-the-partition-principle/),
2014. This survey explicitly presents `PP → AC` as open and summarizes known partial results.

### Prerequisites needed

The intended formal statement is that every model of ZF and PP satisfies AC, namely
$\mathrm{ZF} + \mathrm{PP} \models \mathrm{AC}$.

Mathlib already provides generic first-order syntax, structures, satisfaction, and semantic
consequence in `Mathlib.ModelTheory`. What is currently missing is the first order ZFC axioms:

1. The ZFC axioms.
2. Formulas for set-coded functions, surjections, and injections.
3. PP sentence.
4. The conjecture.

The contribution structure would be:

```text
FormalConjecturesForMathlib/
└── SetTheory/
└── FirstOrderZFC.lean
FormalConjectures/
└── Paper/
└── PartitionPrinciple.lean
```

The final conjecture would look approximately like this:

```lean
import FormalConjecturesUtil

namespace PartitionPrinciple

open FirstOrder FirstOrder.Language

/--
Does the Partition Principle imply the Axiom of Choice over ZF?
-/
@[category research open, AMS 3]
theorem partition_principle_implies_axiom_of_choice :
(FirstOrderZFC.zf ∪ {FirstOrderZFC.partitionPrinciple}) ⊨ᵇ
FirstOrderZFC.axiomOfChoice := by
sorry

end PartitionPrinciple
```

### [AMS categories](https://github.com/google-deepmind/formal-conjectures/labels?q=ams-)

* ams-03 Mathematical logic and foundations

### Choose either option

- [x] I plan on adding this conjecture to the repository
- [ ] This issue is up for grabs: I would like to see this conjecture added by somebody else

Contributor guide

Open the contributing guide

Research direction

Start by reading Mathlib.ModelTheory and the planned FormalConjecturesForMathlib/SetTheory/FirstOrderZFC.lean structure, then inspect the repository's existing formal conjecture patterns. Implement the listed ZFC axioms, formulas, Partition Principle sentence, and conjecture in PartitionPrinciple.lean. Done means the stated semantic-consequence theorem is represented with the requested imports and namespace.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.