Skip to content

Start a tutorial about simple inductive types #91

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

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Villetaneuse
Copy link
Collaborator

Still a draft, but comments welcome, here is the plan:

  • enumerated types
  • inductive types with non inductive constructors
  • nat (first example of an inductive inductive)
  • positive (first example with two inductive constructors)
  • lists (parameterized inductive)
  • binary trees (first example with a constructor with 2 arguments of the inductive type)

Maybe that's too much.
Tactics are:

  • discriminate
  • destruct
  • injection
  • induction and we define functions with (simple) match

Maybe lists and binary trees could go in a separate tutorial?

Still a draft, but comments welcome, here is the plan:
- enumerated types
- inductive types with non inductive constructors
- nat (first example of an inductive inductive)
- positive (first example with two inductive constructors)
- lists (parameterized inductive)
- binary trees (first example with a constructor with 2 arguments of the
  inductive type)

Maybe that's too much.
Tactics are:
- discriminate
- destruct
- injection
- induction
and we define functions with (simple) match

Maybe lists and binary trees could go in a separate tutorial?
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.

1 participant