Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Additional variants on choice #1317

Draft
wants to merge 27 commits into
base: master
Choose a base branch
from

Conversation

lowasser
Copy link
Contributor

Overhauling all the variations on choice and omniscience, notably including following up on a suggestion from @fredrik-bakke to rewrite the existing omniscience principles in terms of decidable types.

I haven't finished the entire set of implications -- I'm missing WLEM => WLPO and WLPO => LLPO -- but I'll follow up with those soon.

@lowasser
Copy link
Contributor Author

I suppose I also ought to add dependent choice.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The omniscience principles in terms of booleans should still be included, but under a different name, i.e. bool-LLPO here. It is a useful fact that these are equivalent

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With all the usages, it seems to me like that implies we want a file somewhere that describes the relationship between decidable subtypes of N and boolean sequences, since that'll get reused for many of the variations on LPO. I'm not sure where that ought to go -- thoughts?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean the equivalence bool ≃ Decidable-Prop l? That is formalized in foundation.decidable-propositions, although I agree a little more exposition could be nice.

@EgbertRijke
Copy link
Collaborator

Very nice pull request! Maybe it would be nice to have a table in tables with all the variations of axioms of choice, which we can then reuse on the various pages.

@lowasser
Copy link
Contributor Author

Maybe it would be nice to have a table in tables with all the variations of axioms of choice, which we can then reuse on the various pages.

Done.

@lowasser
Copy link
Contributor Author

WLPO => LLPO turns out to have some other prerequisites -- unique choice, I think? I'll come back to it.

@lowasser lowasser marked this pull request as ready for review February 12, 2025 19:02
WLEM-LEM : LEM → WLEM
WLEM-LEM lem = level-WLEM-LEM lem
```

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also record that this is equivalent to De Morgan's law, please?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add logic.de-morgans-law to this list


## Definition

### Instances of choice
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Instances of choice
### Instances of countable choice

## Statement

The
{{#concept "axiom of dependent choice" WD="axiom of dependent choice" WDID=Q3303153}}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
{{#concept "axiom of dependent choice" WD="axiom of dependent choice" WDID=Q3303153}}
{{#concept "axiom of dependent choice" WD="axiom of dependent choice" WDID=Q3303153 Agda=axiom-of-dependent-choice}}

instance-dependent-choice A H R total-R

ADC : UUω
ADC = {l1 l2 : Level} → level-ADC l1 l2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Following the naming of axiom-of-choice, this should be called axiom-of-dependent-choice.

level-WCC : (l : Level) → UU (lsuc l)
level-WCC l = (F : ℕ → Set l) → instance-weak-countable-choice-Set F

WCC : UUω
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

axiom-of-weak-countable-choice

### The law of excluded middle implies weak countable choice

```agda
wcc-lem : {l : Level} → LEM l → level-WCC l
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While you're at it, could you refactor the definition of LEM such that we have level-LEM also?

@fredrik-bakke
Copy link
Collaborator

This PR seems to be unfinished, so I'm converting it to a draft.

@fredrik-bakke fredrik-bakke marked this pull request as draft February 13, 2025 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants