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

basic facts for emetric spaces #608

Merged
merged 3 commits into from Jan 21, 2019
Merged

Conversation

sgouezel
Copy link
Collaborator

Adds basic facts on emetric spaces that are already available on metric spaces. In particular, balls in emetric spaces (denoted eball) and basic properties of neighborhoods or convergence.

Some facts that were proved for metric spaces but hold for emetric spaces are transferred from the metric to the emetric spaces, notably first countability, or the fact that separable implies second countable, or the fact that a compact set admits a countable dense subset. The proofs are direct adaptations of the ones for metric spaces.

TO CONTRIBUTORS:

Make sure you have:

  • reviewed and applied the coding style: coding, naming
  • make sure definitions and lemmas are put in the right files
  • make sure definitions and lemmas are not redundant

If this PR is related to a discussion on Zulip, please include a link in the discussion.

For reviewers: code review check list

@digama0
Copy link
Member

digama0 commented Jan 18, 2019

Interesting. There is a bit more structure of interest in emetric balls; in particular infinity balls are equivalence classes and every point is the center of one (i.e. they have the ultrametric property). Also there is a common construction that takes an emetric space and a point in the space (zero) and constructs a metric space out of the infinity ball around it. Things like L^p, l^p and even bcfs fall in this category. Usually it is in the normed group context, but that would require extending to enormed groups.

@sgouezel
Copy link
Collaborator Author

I agree with all you say, especially on the construction of L^p.
In a later PR I will add the construction of a metric space from an emetric space with the property that the distance is everywhere finite. From this, the construction of a metric space on the infinity ball will follow readily. But I tried to keep this PR at a reasonable size, touching only emetric_space (except for the things that I had to remove from metric_space to get things to compile). New stuff can always be added later on.

variables {x y z : α} {ε ε₁ ε₂ : ennreal} {s : set α}

/-- `eball x ε` is the set of all points `y` with `dist y x < ε` -/
def eball (x : α) (ε : ennreal) : set α := {y | edist y x < ε}
Copy link
Member

Choose a reason for hiding this comment

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

I think this can just be called ball; it's already namespaced.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

done

@digama0 digama0 merged commit 2c5bc21 into leanprover-community:master Jan 21, 2019
@sgouezel sgouezel deleted the emetric branch February 7, 2019 10:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants