LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
cartesianproducts [2015/04/21 17:43]
wikiadmin
cartesianproducts [2015/04/21 17:45]
wikiadmin
Line 129: Line 129:
 Here we have two positions ("​annoted"​ [a] and [b]). The types A and B are both Tree. We hence have $s = Tree \times Tree$. Here we have two positions ("​annoted"​ [a] and [b]). The types A and B are both Tree. We hence have $s = Tree \times Tree$.
 The constraints on the patterns are: The constraints on the patterns are:
-\[p_1 = EvenNode \times OddNode \] +\begin{equation*}p_1 = EvenNode \times OddNode \end{equation*} 
-\[p_2 = EvenNode \times EvenNode \] +\begin{equation*}_2 ​= EvenNode \times EvenNode \end{equation*} 
-\[p_3 = OddNode \times Tree \] +\begin{equation*}p_3 = OddNode \times Tree \end{equation*} 
-\[p_4 = ELeaf \times Tree \]+\begin{equation*}p_4 = ELeaf \times Tree \end{equation*}
 (recall that when a position is not present in a pattern we use its general type) (recall that when a position is not present in a pattern we use its general type)
  
Line 155: Line 155:
  
 ...in a system with only two positions can be seen as the constraint: ...in a system with only two positions can be seen as the constraint:
-\[p_i = ENode \times ]2;\infty[ \]+\begin{equation*}p_i = ENode \times ]2;\infty[ \end{equation*}
  
 This works well for .isInstanceOf checks as well, but not for stuff like if i > j, as our cartesian products have no way to represent dependencies between members. This works well for .isInstanceOf checks as well, but not for stuff like if i > j, as our cartesian products have no way to represent dependencies between members.