HP Forums
New [Set] menu - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: HP Prime (/forum-5.html)
+--- Thread: New [Set] menu (/thread-11968.html)



New [Set] menu - compsystems - 12-17-2018 03:13 AM

Hello

The concept of set is almost the first thing taught in mathematics, for this reason, I think you should add a submenu in [TOOLS] [Math] [Set] with the following eight instructions, with symbols as tags

1:∪
2: ∩
3: \
4: ×
5: ∈
6: ⊂
7: Δ
8: '

1: ∪
example set[ "b", "a", "c", "a" ] union set[ "a", "d" ] [↵] set["b","a","c","d"]

2: ∩
set[ "b", "a", "c", "a" ] intersect set[ "a", "d" ] [↵] set["a"]

3: \ (minus)
set[ "b", "a", "c", "a" ] minus set[ "a", "d" ] [↵] set["b","c"]

4: × (cartesian product)
set[ "b", "a", "c", "a" ] * set[ "a", "d" ] [↵]

[["b","a"],
["b","d"],
["a","a"],
["a","d"],
["c","a"],
["c","d"]]

5: ∈ (is_element)
evalb(is_element("a",set["b","a","c","a"])) [↵]true // For a more intuitive output the numeric value [>0]/0 should be symbolix true/false, in this way the use of the EVALB() command is avoided.

6: ⊂ (is_included) this function is not yet visible in the hp-prime catalog =(

evalb(is_included(set[ "a", "d" ], set[ "b", "a", "c", "a" ])) [↵] false

7: Δ (Symmetric difference )

M:= set[ "A", "B", "C"]
N:= set[ "B", "G", "L", "E"]
U:= set[ "A", "B", "C", "G", "L", "E", "I", "J", "F", "H"]

M union N [↵] set["A","B","C","G","L","E"]
M intersect N [↵] set["B"]
M minus N [↵] set["A","C"]
M Δ N [↵] set["G","L","E","A","C"] // Code:
PHP Code:
(N_ minus M_union (M_ minus N_

8: ' (Complement )
M' U [↵] set["G","L","E","I","J","F","H"] // Code: U_ minus M_
N' U [↵] set["A","C","I","J","F","H"] // Code: U_ minus N_


RE: New [Set] menu - Eddie W. Shore - 12-18-2018 12:48 PM

This is awesome. Great suggestion compsystems!


RE: New [Set] menu - Carlos295pz - 12-18-2018 09:33 PM

It would be interesting a separate application for this task, I think it would be colorful


RE: New [Set] menu - compsystems - 12-19-2018 02:16 AM

I notice that in the LIST menu, it has three set commands, but the list type is not always equal to a set

test

index:=1:; E_ := [ "H", "E", "L", "L", "O" ]:;
find( "L", E_ ) [enter]
[3,4] // "L" is in two positions
index(E_,"L") [enter]
3

F_ := set[ "H", "E", "L", "L", "O" ] [enter] set[ "H", "E", "L", "O" ]
find( "L", F_ ) [enter]
[3] // "L" is in one positions
index(F_,"L") [enter]
3

E_ == F_ [enter] false

also diference cmd does not work on a set
DIFFERENCE(set["b","a","c","a"],set["a","d"]) [enter]
{"b","c","d"}

set[ "b", "a", "c", "a" ] minus set[ "a", "d" ] [↵] set["b","c"]