Step * of Lemma bs_tree-definition

[E,A:Type]. ∀[R:A ⟶ bs_tree(E) ⟶ ℙ].
  ({x:A| R[x;bst_null()]} 
   (∀value:E. {x:A| R[x;bst_leaf(value)]} )
   (∀left:bs_tree(E). ∀value:E. ∀right:bs_tree(E).
        ({x:A| R[x;left]}   {x:A| R[x;right]}   {x:A| R[x;bst_node(left;value;right)]} ))
   {∀v:bs_tree(E). {x:A| R[x;v]} })
BY
ProveDatatypeDefinition `bs_tree-induction` }


Latex:


Latex:
\mforall{}[E,A:Type].  \mforall{}[R:A  {}\mrightarrow{}  bs\_tree(E)  {}\mrightarrow{}  \mBbbP{}].
    (\{x:A|  R[x;bst\_null()]\} 
    {}\mRightarrow{}  (\mforall{}value:E.  \{x:A|  R[x;bst\_leaf(value)]\}  )
    {}\mRightarrow{}  (\mforall{}left:bs\_tree(E).  \mforall{}value:E.  \mforall{}right:bs\_tree(E).
                (\{x:A|  R[x;left]\}    {}\mRightarrow{}  \{x:A|  R[x;right]\}    {}\mRightarrow{}  \{x:A|  R[x;bst\_node(left;value;right)]\}  ))
    {}\mRightarrow{}  \{\mforall{}v:bs\_tree(E).  \{x:A|  R[x;v]\}  \})


By


Latex:
ProveDatatypeDefinition  `bs\_tree-induction`




Home Index