
element(?Index, +List, ?Value)

   Value is the Index'th element of the integer list List.



Arguments
   ?Index              A variable or an integer.
   +List               A non-empty list of integers.
   ?Value              A variable or an integer.

Type
   library(fd)

Description
   This constraints can be used in a variety of programs to state a
   relation between two domain variables.  List is a list of integers and
   the constraint states that its Index'th element is equal to Value, i.e.



                             List_Index = Value

   Every time Index or Value is updated, this constraint is activated and
   the domain of the other variable is updated accordingly.




Fail Conditions
      Fails if Value is not the Index'th element of List.



Resatisfiable
      No.

Examples
   
   [eclipse 13]: element(I, [1,3,6,3], V).
   I = I :: [1 .. 4]
   V = V :: [1, 3, 6]
   Delayed goals:
   element(I :: [1 .. 4], t(1, 3, 6, 3), V :: [1, 3, 6], 4, 3)
   yes.
   [eclipse 14]: element(I, [1,3,6,3], V), V ## 3.
   I = I :: [1, 3]
   V = V :: [1, 6]
   Delayed goals:
   element(I :: [1, 3], t(1, 3, 6, 3), V :: [1, 6], 2, 2)
   yes.





See Also
   :: / 2, #:: / 2, atmost / 3
