Hi Yuri, I am not sure I understand your suggestion. { [x -> d] : x \in {1..y : y \in 0..n} } is the set of functions whose domain is a set of the form 1..y, for some y \in 0 .. n, and whose range is a subset of d. Any function of that shape is a sequence over d whose length is at most n, and the union of all these function sets gives you the set of sequences over d whose length is at most n. In contrast, { [x -> d] : x \in 1..n } is a set of functions whose domain is some x \in 1 ..n (so x is a natural number, assuming n \in Nat). Although it is a well-formed TLA _expression_, it is not clear what such a value is. If you are concerned about the double set comprehension in Dominik's suggestion, you can easily get rid of it. In fact, I just typed the following into TLAPS, the TLA+ Proof System, and it is proved immediately. LEMMA ASSUME NEW n \in Nat, NEW Data PROVE UNION{[x -> Data]: x \in {1..y : y \in 0..n}} = UNION {[(1..y) -> Data] : y \in 0..n} OBVIOUS Best regards, Stephan On Apr 30, 2013, at 3:31 AM, Y2i <yur...@xxxxxxxxx> wrote: Dear Dominik, |