Skip to content

feat(Tactic/Positivity): make positivity work for types that are not partial orders#35394

Open
HugLycan wants to merge 9 commits intoleanprover-community:masterfrom
HugLycan:feat/positivity-zeroness-1
Open

feat(Tactic/Positivity): make positivity work for types that are not partial orders#35394
HugLycan wants to merge 9 commits intoleanprover-community:masterfrom
HugLycan:feat/positivity-zeroness-1

Conversation

@HugLycan
Copy link
Contributor

@HugLycan HugLycan commented Feb 16, 2026

Make positivity work for types that are not partial orders

Most PositivityExt haven't been updated for non partial order cases yet. They will be updated in the later PR.

Strictness now depends on Option Q(PartialOrder $α) instead of Q(PartialOrder $α), and the constructors of Strictness now have their order typeclass arguments. In order to help Qq synth instances property, we have to move assertInstancesCommute to inner branch, manually add haveI' or explicitly pass the order typeclass instance into .positive/.nonnegative.


Open in Gitpod

@github-actions github-actions bot added the new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! label Feb 16, 2026
@github-actions
Copy link

Welcome new contributor!

Thank you for contributing to Mathlib! If you haven't done so already, please review our contribution guidelines, as well as the style guide and naming conventions.

We use a review queue to manage reviews. If your PR does not appear there, it is probably because it is not successfully building (i.e., it doesn't have a green checkmark), has the awaiting-author tag, or another reason described in the Lifecycle of a PR.

If you haven't already done so, please come to https://leanprover.zulipchat.com/, introduce yourself, and mention your new PR.

Thank you again for joining our community.

@github-actions github-actions bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Feb 16, 2026
@github-actions
Copy link

github-actions bot commented Feb 16, 2026

✅ PR Title Formatted Correctly

The title of this PR has been updated to match our commit style conventions.
Thank you!

@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Feb 16, 2026
@github-actions
Copy link

github-actions bot commented Feb 16, 2026

PR summary d048652946

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ compareHypNonzero
+ pow_zero_ne_zero

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for scripts/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@HugLycan HugLycan changed the title Feat/positivity zeroness 1 feat(Tactic/Positivity): make positivity work for types that are not partial orders Feb 16, 2026
@tb65536 tb65536 added the t-meta Tactics, attributes or user commands label Feb 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-meta Tactics, attributes or user commands

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants