-
Notifications
You must be signed in to change notification settings - Fork 46
Contributing
You'll need to log in or join GitHub to contribute.
Not sure where to begin? Head over to our Discussion board and start a new thread! We're always happy to have new community members join the conversation.
Here is the thread for discussing these guidelines in particular.
If you have a specific improvement you'd like to see made to the pi-Base, you can always open an Issue that includes the following information:
- All spaces/properties/theorems related to your improvement, including their IDs (e.g. S012345). Links to https://topology.pi-base.org are encouraged.
- A description of the changes you'd recommend.
After discussion of your suggestion, any contributor can make a "Pull Request" (see below) to implement your improvement.
To add a pull request implementing any changes to the repository, fork this project to your own account, which creates a copy of https://github.com/pi-base/data/ to something like https://github.com/StevenClontz/data/.
The easiest way to edit your fork of the repository is to use GitHub.dev. For example, if your fork is located at https://github.com/StevenClontz/data, you can edit the URL to say https://github.dev/StevenClontz/data. This opens a file editor in your web browser where you can make whatever changes you'd like. Then you can "commit and push" those changes to save them to your fork.
When editing, be sure to review our conventions on notation and naming, and read below on information about references, our review criteria, etc.
Once you're happy with your changes, you can open up all pull request for review. This will run some automatic checks to make sure your changes don't have any syntax errors or introduce any contradictions. Then one of our volunteer reviewers will check your work and discuss the proposed changes and any required effort necessary before they can be merged into the main data repository.
When possible, contributions should reference a peer-reviewed publication, along with a Mathematical Reviews link or DOI link. Sometimes Wikipedia references are also appropriate.
pi-Base is not a forum for peer review, so to contribute improvements not directly reflected in the literature, we encourage you to ask (and self-answer if necessary) an appropriate question on either https://math.stackexchange.com/ or https://mathoverflow.net/, and use that as your citation.
The golden rules:
- New volunteers should be especially encouraged and thanked for their contributions.
- Contributions that add verifyable mathematical knowledge to the pi-Base with appropriate
references should be merged as soon as possible.
- If the PR could nonetheless could be improved (e.g. a better choice of naming, a more useful description), those improvements should be proposed in a separate issue/PR (whether by encouraging the original contirbutor, or directly by the reviewer).
- If minor errors (e.g. typos) are found, the reviewer can edit the PR directly before accepting and merging the PR.
Contributions that edit/add a "trait" (pair of an existing space/property) are typically acceptable unless the trait is already deduced by existing theorems.
Since there are infinitely-many possible spaces and properties, the introduction of new spaces and properites have a higher bar to meet. Likewise, we have some requirements on new theorems in order to ensure high-quality automated deductions.
- The property should be of interest to researchers, whether it appears in the peer-reviewed literature or another scholarly venue such as MathOverflow.
- The contribution should also include added traits and/or theorems that allows the pi-Base to deduce whether or not this property holds for multiple spaces.
- The space should be of interest to researchers, whether it appears in the peer-reviewed literature or another scholarly venue such as MathOverflow.
- The space should generally provide an example/counter-example that is not currently represented in the pi-Base (e.g. it is a space that is X and Y but not Z, and the pi-Base does not already know of such an example). So the contribution should include sufficient traits/theorems to provide this.
- The thoerem should be of the form
AND(list of props) => prop
.- Tip: a theorem of the form
P or Q => R
can be split into two theoremsP => R
andQ => R
. LikewiseP => Q or R
and be rewritten asP and ~Q => R
, and so on.
- Tip: a theorem of the form
- The theorem should not be deducible from existing theorems.
- Tip: if the theorem
P and Q => R
can be deduced, a search forP and Q and ~R
in pi-Base will point this out.
- Tip: if the theorem
- If a new theorem makes other theorems redundant, consider whether the other theorems should instead be edited to be generalized.
These are our current reviewers. Please feel free to contact us with any questions via our Discussion board.
- Chris Caruvana, @ccaruvana
- Steven Clontz, @StevenClontz
- Patrick Rabau, @prabau
- Lynne Yengulalp, @lyengulalp
The copyright of all data in this repository - including any merged user contributions - is owned by Steven Clontz and James Dabbs and licensed for free public use under CC-BY-4.0. Please see LICENSE.md for details.