# Multi-Set Manipulator

From Esolang

Multi-Set Manipulator is a set-based programming language invented by Mathematical Notation. It is not concise at all if it is compared to APL.

## All instructions (in mathematics; this is just copied from the Unicode website)

There are 75 symbols in MSM.

All sets in Set Manipulator are multi-sets, although they can occasionally be treated as normal sets. A∩B A with all items not in B removed; Intersection A∪B A with all B items appended; Union AΔB (A-B)∪(B-A) UA, Unique; make all items in set A unique and return A's value after the unique operation. ^A or ~A or ¯A All items that don't belong to A A-B A with all B items removed ∅ null set () Grouping operator "abcde..." define a set that has 1-byte characters 'a' one character [1,2,'a'] define a multi-set, allowing numbers. I The set that results from 1 line of input O The output set ← initializing |a| a's absolute value − Minus sign; subtraction or number negation √ Square root sign; simply to the power of 1/2. ∛ Cube root; simply to the power of 1/3. ∜ Fourth root; simply to the power of 1/4. ∞ Infinity a∣b Whether a Divides b a∤b Whether a does not divide b ∈ ELEMENT OF ∉ NOT AN ELEMENT OF ∋ CONTAINS AS MEMBER ∌ DOES NOT CONTAIN AS MEMBER ¬ not sign ≌ ALL EQUAL TO ∧ LOGICAL AND ∨ LOGICAL OR ÷ Division × Cartesian product A new set can be constructed by associating every element of one set with every element of another set. The Cartesian product of two sets A and B, denoted by A × B is the set of all sets {a, b} such that a is a member of A and b is a member of B. {1, 2} × {1, 2} = {{1, 1}, {1, 2}, {2, 1}, {2, 2}}. {"a", "b", "c"} × {"d", "e", "f"} = {{"a", "d"}, {"a", "e"}, {"a", "f"}, {"b", "d"}, {"b", "e"}, {"b", "f"}, {"c", "d"}, {"c", "e"}, {"c", "f"}}.. · Multiplication + Addition ≼ PRECEDES OR EQUAL TO ≽ SUCCEEDS OR EQUAL TO ≾ PRECEDES OR EQUIVALENT TO ≿ SUCCEEDS OR EQUIVALENT TO ⊂ SUBSET OF ⊃ SUPERSET OF ⊄ NOT A SUBSET OF ⊅ NOT A SUPERSET OF ⊆ SUBSET OF OR EQUAL TO ⊇ SUPERSET OF OR EQUAL TO ⊈ NEITHER A SUBSET OF NOR EQUAL TO ⊉ NEITHER A SUPERSET OF NOR EQUAL TO ⊊ SUBSET OF WITH NOT EQUAL TO ⊋ SUPERSET OF WITH NOT EQUAL TO ⊀ DOES NOT PRECEDE ⊁ DOES NOT SUCCEED ≠ NOT EQUAL TO = equals sign; compares both values and multi-sets < Less than > Greater than ≤ LESS-THAN OR EQUAL TO ≥ GREATER-THAN OR EQUAL TO ≬ Between ≭ NOT EQUIVALENT TO ≲ LESS-THAN OR EQUIVALENT TO ≳ GREATER-THAN OR EQUIVALENT TO ≴ NEITHER LESS-THAN NOR EQUIVALENT TO ≵ NEITHER GREATER-THAN NOR EQUIVALENT TO ≺ PRECEDES ≻ SUCCEEDS ⊻ XOR ⊼ NAND ⊽ NOR ⊭ NOT TRUE ⊨ TRUE ∴ THEREFORE ∵ BECAUSE; part of an if statement such as ∵condition∴action ⋠ DOES NOT PRECEDE OR EQUAL ⋡ DOES NOT SUCCEED OR EQUAL