-
Notifications
You must be signed in to change notification settings - Fork 82
Erdős Problem 422 #692
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
Open
rao107
wants to merge
7
commits into
google-deepmind:main
Choose a base branch
from
rao107:erdos_422
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Erdős Problem 422 #692
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
8591cd1
Erdős Problem 422
rao107 8951771
Change def of f to start at 1
rao107 aa5caa7
Update comment
rao107 4ed7626
Merge https://github.com/rao107/formal-conjectures into erdos_422
rao107 e43a805
Update FormalConjectures/ErdosProblems/422.lean
rao107 00c0c01
add in answer(sorry)
rao107 534e360
Add more related statements
rao107 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
/- | ||
Copyright 2025 The Formal Conjectures Authors. | ||
|
||
Licensed under the Apache License, Version 2.0 (the "License"); | ||
you may not use this file except in compliance with the License. | ||
You may obtain a copy of the License at | ||
|
||
https://www.apache.org/licenses/LICENSE-2.0 | ||
|
||
Unless required by applicable law or agreed to in writing, software | ||
distributed under the License is distributed on an "AS IS" BASIS, | ||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
See the License for the specific language governing permissions and | ||
limitations under the License. | ||
-/ | ||
|
||
import FormalConjectures.Util.ProblemImports | ||
|
||
/-! | ||
# Erdős Problem 422 | ||
|
||
*Reference:* [erdosproblems.com/422](https://www.erdosproblems.com/422) | ||
-/ | ||
|
||
namespace Erdos422 | ||
|
||
open Filter | ||
open scoped Topology | ||
|
||
instance : Norm ℕ+ where | ||
norm n := n | ||
|
||
/-- | ||
Let $f(1) = f(2) = 1$ and for $n > 2$ | ||
$$ | ||
f(n) = f(n - f(n - 1)) + f(n - f(n - 2)). | ||
$$ | ||
-/ | ||
def f : ℕ+ → ℕ+ | ||
| 1 => 1 | ||
| 2 => 1 | ||
| n => f (n - f (n - 1)) + f (n - f (n - 2)) | ||
-- Note: It is not known whether $f(n)$ is well-defined for all $n$. | ||
termination_by n => n | ||
decreasing_by | ||
all_goals sorry | ||
|
||
/-- | ||
Does $f(n)$ miss infinitely many integers? | ||
-/ | ||
@[category research open, AMS 11] | ||
theorem erdos_422 : Set.Infinite {n | ∀ x, f x ≠ n} ↔ answer(sorry) := by | ||
sorry | ||
|
||
/-- | ||
Is $f$ surjective? | ||
-/ | ||
@[category research open, AMS 11] | ||
theorem erdos_422.variants.surjective : f.Surjective ↔ answer(sorry) := by | ||
sorry | ||
|
||
/-- | ||
How does $f$ grow? | ||
-/ | ||
@[category research open, AMS 11] | ||
theorem erdos_422.variants.growth_rate : f =O[atTop] (answer(sorry) : ℕ+ → ℕ+) := by | ||
sorry | ||
|
||
end Erdos422 |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here I think it would be interesting to add two statements:
f
(seems to be open)f
must eventually terminate (presumably not? admittedly I haven't thought too much about whether or not this is hard to prove)There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those sound like good ideas. I'll also add in a question of the function's growth rate since that's open as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey, I added your suggestions but I had a bit of trouble with the second.
For it, I removed the
partial
definition forf
and defined the function withsorry
. I don't think this is what you had in mind when you suggested it so I'd welcome any other ways to define thatf
must eventually terminate.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps by termination @Paul-Lez meant whether
f
becomes stationary at some point? I.e., does there existm
andN
for whichf n = m
for alln
larger thanN
. Termination can be quite surprising in this sense, see for example the Goodstein sequence which eventually decreases and terminates at 0.The other interpretation of termination here is whether one reaches a point at which
f n
cannot be defined (e.g, ifn - f (n - 1) < 0
), but I think this sense is already captured in the definition.