[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] Set of sets

From: Andrew Makhorin
Subject: Re: [Help-glpk] Set of sets
Date: Wed, 10 Dec 2008 03:10:11 +0300

> sets of sets are not to be properly supported by GLPK:

> The for statement does not support set of sets:
> set M{1..2};
> solve;
> for {m in M}
>   display m;
> data;
> set M[1] := 1 2;
> set M[2] := A B C;

> results in
> M must be subscripted

Dummy index cannot be a set, i.e. context '{m in M}' is not valid
in this case. The following statement is correct:

for {i in 1..2, m in M[i]}
   display ...

> Setof does not support set of sets:
> set M := setof{ i in {1..3} } {1..i};

> results in
> integrand following setof{...} has invalid type

In setof integrand cannot be a set, it can be only a n-tuple.
The following statement is correct:

set M{i in 1..3} := 1..i;

> set M:= {{1..2}, {1..3}};
> results in a set of tuples ( {1..2} cross {1..3} ). It should better
> return a set of sets.

I do not think so. 'set M:= {{1..2}, {1..3}};' means the same as
'set M:= {i in {1..2}, j in {1..3}};' with dummy indices omitted, so
formally it is a cross product.

> Same for
> set M:= {({1..2}), ({1..3})};

> Same for 
> set A := {1..2};
> set B := {1..3};
> set M:= {A,B};

> cf.

A set of sets is like an array of sets, i.e. like an array, whose
members are plain sets; it is similar to a subscripted parameter, whose
members are numbers or symbols.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]