From fef56ebd0e6b5edd2fe8b3393288c8811a7afc43 Mon Sep 17 00:00:00 2001 From: Wilmer Ricciotti Date: Fri, 18 Nov 2011 16:02:48 +0000 Subject: [PATCH] Added help for discriminator and inverter. --- matita/matita/help/C/sec_terms.xml | 35 ++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/matita/matita/help/C/sec_terms.xml b/matita/matita/help/C/sec_terms.xml index 9a968e5c9..8cd75e228 100644 --- a/matita/matita/help/C/sec_terms.xml +++ b/matita/matita/help/C/sec_terms.xml @@ -453,6 +453,41 @@ f must be defined by means of tactics. Notice that the command is equivalent to theorem f: T ≝ t. + + <emphasis role="bold">discriminator</emphasis> &id; + discriminator + discriminator i + Defines a new discrimination (injectivity+conflict) principle à la + McBride for the inductive type i. + The principle will use John + Major's equality if such equality is defined, otherwise it will use + Leibniz equality; in the former case, it will be called + i_jmdiscr, in the latter, i_discr. + The command will fail if neither equality is available. + Discrimination principles are used by the destruct tactic and are + usually automatically generated by Matita during the definition of the + corresponding inductive type. This command is thus especially useful + when the correct equality was not loaded at the time of that + definition. + + + <emphasis role="bold">inverter</emphasis> &id; <emphasis role="bold">for</emphasis> &id; (&path;) [&term;] + inverter + inverter n for i (path) : s + Defines a new induction/inversion principle for the inductive type + i, called n. + (path) must be in the form (# # # ... #), + where each # can be either ? or + %, and the number of symbols is equal to the number of + right parameters (indices) of i. Parentheses are + mandatory. If the j-th symbol is + %, Matita will generate a principle providing + equations for reasoning on the j-th index of i. If the + symbol is a ?, no corresponding equation will be + provided. + s, which must be a sort, is the target sort of the + induction/inversion principle and defaults to Prop. + <emphasis role="bold">letrec</emphasis> &TODO; &TODO; -- 2.39.2