It is possible but it is hard to see how you might use it.
You could write:
T : TYPE
S : TYPE = {x : T | FALSE} % empty!!!
traces : TYPE = list[S]
The trouble is that you can never actually construct a non-null
list of this type. The list type is not itself empty since
it contains null[S] but nothing else.
-Shankar