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

Fix a few minor Lean misformalisations #210

Merged
merged 8 commits into from
Sep 9, 2024

Commits on Sep 9, 2024

  1. Fix 1969 B2

    This was disprovable because the key predicate did not quantify over all
    groups (and the goal was false even for the trivial group).
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    8c3dbc1 View commit details
    Browse the repository at this point in the history
  2. Fix 1969 A5

    The original form was disprovable because of quantifier confusion (e.g.,
    taking `x` and `y` to be non-zero and constant gave a contradiction).
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    69ca70d View commit details
    Browse the repository at this point in the history
  3. Fix 1968 A3

    This was disprovable because the argument `ha : SDiff (Finset a)`
    allowed the user to fill in any function for the set difference
    function. So for example by providing a dummy set difference function
    that just always returned the empty set, the goal was false.
    
    Presumably this error arose because the original formaliser found that
    they could not use the existing set difference function out of the box.
    The right fix is either to put `open Classical` before the proof or to
    add the typeclass argument `[DecidableEq a]`.
    
    In the end I have provided rewrite since the original formalisation is
    a bit more complicated than it needs to be.
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    f1d6d78 View commit details
    Browse the repository at this point in the history
  4. Fix 1965 A6

    This was disprovable because it did not restrict `x` and `y` to the
    positive quadrant. The informal statement is quite sloppy in this same
    sense (presumably because non-integral powers of negative reals are
    not defined).
    
    I have also proposed changing the implementation of "tangent to the
    curve" since a priori a line could intersect a degree `m` curve in up
    to `m` points so the naive set-counting definition is arguably too
    strong.
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    6bc9d96 View commit details
    Browse the repository at this point in the history
  5. Fix 1964 B1

    This was disprovable because the hypothesis `apos : a > 0` means that
    `0 ≤ a n` for all `n` and there exists some `n` such that `0 < a n`.
    (So the sequence: 1, 0, 0, 0, 0, ... was admissible and provided a
    counter example to the statement.)
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    7c68ba5 View commit details
    Browse the repository at this point in the history
  6. Fix 2018 B5 (again)

    This was previously "fixed" in c75c0b0
    but unfortunately an error remained.
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    12c5340 View commit details
    Browse the repository at this point in the history
  7. Fix 1963 A4

    This was disprovable because of a minor Mathlib footgun: namely the
    limsup of a real-valued function which is not bounded above is zero.
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    5552a89 View commit details
    Browse the repository at this point in the history
  8. Fix 1962 A2

    This was disprovable because the zero function was excluded from the
    solution set. The fix is to replace `a > 0` with `a ≥ 0` in the
    solution. Other changes are just style.
    
    There is incidentally a sharper version of this question which requires
    establishing which solutions correspond to functions with finite /
    infinite domain. However this is not actually asked.
    ocfnash committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    c109419 View commit details
    Browse the repository at this point in the history