Properties

Properties are true expressions. They are used to prove theorems

Reflexive Property of Equality
a = a

Associative Property of Addition
(a + b) + c = a + (b + c)

Commutative Property of Addition
a + b = b + a

Additive Identity
a + 0 = a

Subtraction is Addition of Inverse
a - b = a + (b ⋅ (-1))

Additive Inverse Property
a + (a ⋅ (-1)) = 0

Associative Property of Multiplication
(ab) ⋅ c = a ⋅ (bc)

Commutative Property of Multiplication
ab = ba

Multiplication by Zero
a0 = 0

Multiplicative Identity
a1 = a

Division Property
a / 1 = a

Division is Multiplication by Inverse
a / b = a ⋅ (1 / b)

Distributive Property
a ⋅ (b + c) = (ab) + (ac)

Fixed Value Statement
1 + 2 = 3

Zero Memory
value of cell 0 at time t = 0

Addition To Function Call Property
expression a + b = __add__(a, b)

Multiplication To Function Call Property
expression a * b = __mul__(a, b)

Equal To Function Call Property
expression a == b = __eq__(a, b)

Greater Than To Function Call Property
expression a > b = __gt__(a, b)

Less Than To Function Call Property
expression a < b = __lt__(a, b)

Type of Assign
type of x = e = "assign"

Type of elif
type of elif e: = "elif"

Type of else
type of else: = "else"

While is loop
(pair ("while", x)) describes a loop = True

If is loop
(pair ("if", x)) describes a loop = False

Zero Memory Named
byte at ID: x, cell #0 at time t = 0

ASCII A
"A" in decimal = 65

ASCII B
"B" in decimal = 66

get attribute to getattr
target_1.target_2 = getattr(target1, target2)

assign to set attribute
getattr(target_1, target_2) = value = setattr(target_1, target_2, value)

get item to getitem
object[key] = __getitem__(object, key)

assign getitem to set item
__getitem__(object, key) = value = __setitem__(object, key, value)

Get first token
the first token in (pair (name, some)) = name

For is loop
(trio ("for", line, ex)) describes a loop = True

Add 0 and 1
sum of unsigned integers [ 0, [ ] ] and [ 1, [ ] ] = [ 1, [ ] ]

Reverse by Dumping
reverse of s = result of dumping s to [ ]

Reverse List
reverse of remaining stack [ x, [ ] ] and already reversed stack ys = [ x, ys ]

Reverse List (2)
reverse of remaining stack [ x, xs ] and already reversed stack ys = reverse of remaining stack xs and already reversed stack [ x, ys ]

Reverse List (3)
reverse of remaining stack [ ] and already reversed stack [ ] = [ ]

Reverse List (4)
reverse of xs = reverse of remaining stack xs and already reversed stack [ ]

Push Stack
result of dumping [ y, ys ] to xs = result of dumping ys to [ y, xs ]

Push Stack (2)
result of dumping [ y, [ ] ] to xs = [ y, xs ]

Push Stack (3)
result of dumping [ ] to xs = xs

Appending to a Stack
result of appending y to xs = result of dumping (result of dumping xs to [ ]) to [ y, [ ] ]

Appending to a List Property
result of appending y to xs = reverse of [ y, reverse of xs ]

Compare 0 to 0
compare bit 0 and bit 0 = [ 1, [ 0, [ ] ] ]

Compare 1 to 0
compare bit 1 and bit 0 = [ 0, [ 1, [ ] ] ]

Compare 0 to 1
compare bit 0 and bit 1 = [ 0, [ 0, [ ] ] ]

Compare 1 to 1
compare bit 1 and bit 1 = [ 1, [ 0, [ ] ] ]

Compare x to y
compare bit stack [ x, [ ] ] and bit stack [ y, [ ] ] = compare bit x and bit y

Minimum
minimum value of stack [ x, [ ] ] = x

Maximum
maximum value in stack [ x, [ ] ] = x

Are Equal
[] = []

Find Number Bits
index of value value in numbers = index of value value in numbers with current index [ 0, [ ] ]

Find Number
index of value v in els = index of value v in els with current index 0

Find Value
index of value v in els = output of the index_compute function where the input stack is els, value is v, and index is 0

Find Node With Value
index of value val in els = index of value val in els with current index 0

Minimum Index
index of the mininum value in stack els = index of value (minimum value of stack els) in els

Maximum Index
index of the maximum value in stack els = index of value (maximum value in stack els) in els

Subtract by 0
bit xs minus bit 0 = xs

Subtract by 1
bit [ 1, xs ] minus bit 1 = [ 0, xs ]

Subtract by 1 (2)
bit [ 0, xs ] minus bit 1 = [ 1, bit xs minus bit 1 ]

Pop Index
remaining elements after xs is popped at index idx = remaining elements after xs is popped at index idx and visited stack is [ ]

Pop Index (2)
remaining elements after [ x, xs ] is popped at index [ 0, [ ] ] and visited stack is ys = result of dumping xs to ys

Pop Index (3)
remaining elements after [ x, xs ] is popped at index [ 1, [ ] ] and visited stack is result = remaining elements after xs is popped at index [ 0, [ ] ] and visited stack is [ x, result ]

Pop Index (4)
remaining elements after [ x, xs ] is popped at index [ y0, [ y1, ys ] ] and visited stack is result = remaining elements after xs is popped at index (bit [ y0, [ y1, ys ] ] minus bit 1) and visited stack is [ x, result ]

Pop Index End
remaining elements after [ x, xs ] is popped at index 0 and visited stack is ys = reverse of (result of dumping xs to ys)

Pop Index End Alternate
remaining elements after [ x, xs ] is popped at index 0 and visited stack is ys = result of dumping ys to xs

Pop Index Recurse
remaining elements after [ x, xs ] is popped at index idx and visited stack is v = remaining elements after xs is popped at index (idx - 1) and visited stack is [ x, v ]

Pop At List
stack after popping a value from stack xs at index idx = reverse of (stack after popping a value from stack xs at index idx in traversed elements: [ ])

Pop At List End
stack after popping a value from stack [ x, xs ] at index 0 in traversed elements: result = result of dumping xs to result

Pop At List 2
stack after popping a value from stack [ x, xs ] at index idx in traversed elements: result = stack after popping a value from stack xs at index (idx - 1) in traversed elements: [ x, result ]

Sort List
result of sorting [ ] with sorted stack sl = sl

Sort List (2)
result of sorting [ el, rem ] with sorted stack sl = result of sorting (remaining elements after [ el, rem ] is popped at index (index of the maximum value in stack [ el, rem ])) with sorted stack [ maximum value in stack [ el, rem ], sl ]

Sort
result of sorting els = result of sorting els with sorted stack [ ]

Get Item
the element at index 0 of stack [ x, y ] = x

Get Item 2
the element at index i of stack [ x, y ] = the element at index (i - 1) of stack y

Set Element At
result of storing value at index idx of stack elements = set index idx of remaining stack elements to value with visited : [ ]

Set element end
set index 0 of remaining stack [ x, rest ] to value with visited : visited = result of dumping [ value, visited ] to rest

Set Element Recurse
set index idx of remaining stack [ x, rest ] to value with visited : y = set index (idx - 1) of remaining stack rest to value with visited : [ x, y ]

Get Length
length of stack xs = length of remaining stack xs with count 0

Get Length 2
length of remaining stack [ ] with count count = count

Get Length 3
length of remaining stack [ x, y ] with count count = length of remaining stack y with count (count + 1)

Contains False
stack [ ] contains x = False

Set Key Value
result of storing value at key: key in map: entries = output of function store_compute where input key is key, value is value, map is entries, and processed map is [ ]

Set Key Value Add
output of function store_compute where input key is key, value is value, map is [ ], and processed map is kvs = reverse of [ entry key: value, kvs ]

Set Key Value Add Dump
output of function store_compute where input key is key, value is value, map is [ ], and processed map is kvs = result of dumping kvs to [ entry key: value, [ ] ]

Get Key Value Match
value at key in map [ pair (key, value), remaining ] = value

Get Key Value No Match
value at key in map [ pair (bad_key, value), remaining ] = value at key in map remaining

Get Entry Key Match
value at key in map [ entry key: value, remaining ] = value

Get Entry Key No Match
value at key in map [ entry bad_key: value, remaining ] = value at key in map remaining

Has Key Found
map [ entry key: value, remaining ] contains key key = True

Has Key Continue
map [ entry bad_key: value, remaining ] contains key key = map remaining contains key key

Has Key Not Found
map [ ] contains key key = False

Delete Key Property
result of deleting the entry with key key from map entries = output of function delete_entry where input key is key, map is entries, and processed is [ ]

Delete Key Property 2
output of function delete_entry where input key is key, map is [ pair (key, value), remaining ], and processed is kvs = output of function delete_entry where input key is key, map is remaining, and processed is kvs

Delete Key Property 3
output of function delete_entry where input key is key, map is [ pair (lkey, lvalue), remaining ], and processed is kvs = output of function delete_entry where input key is key, map is remaining, and processed is [ pair (lkey, lvalue), kvs ]

Delete Entry Key Property 2
output of function delete_entry where input key is key, map is [ entry key: value, remaining ], and processed is kvs = output of function delete_entry where input key is key, map is remaining, and processed is kvs

Delete Entry Key Property 3
output of function delete_entry where input key is key, map is [ entry lkey: lvalue, remaining ], and processed is kvs = output of function delete_entry where input key is key, map is remaining, and processed is [ entry lkey: lvalue, kvs ]

Delete Key Property 4
output of function delete_entry where input key is key, map is [ ], and processed is kvs = reverse of kvs

1 2