The current interval notation has notoriety for clashing with other notations and having weird unmatched brackets (the two cases being mutually exclusive). For instance, x∈[0,1] is ambiguous as to whether x is a fuzzy logic value (being a member of an interval) or a strict boolean value (being a member of a list). That's quite a large ambiguity for this otherwise useful notation. Also, the unacquainted can easily confuse whether a bracket is for an open end or a closed end. I've always managed to remember, but that's no excuse to keep things as they are.
I propose a simple alternative: replace ( with <| and [ with ≤|, and reflect for the right-hand end. So, our fuzzy logic interval would be ≤|0,1|≥. Intervals of integers can keep the double-dot notation, so ≤|0..1|≥ represents the same thing as the list [0,1]. It's a list because it corresponds to a portion of Z, which I consider a list (see last post for justification).
That's about it. The best way to approximate this in ASCII is by writing things like “<=|0,1|=>”. It's better to keep the ‘=’ next to the ‘|’, so that one avoids the misparse “(<=|0,1|>) =”. And a note for LATEX: put the ‘<’-like symbols in curly braces to avoid them spacing as if they were infix operators.
No comments:
Post a Comment