$1. Foundations
$1.1. Counting numbers
To count an unnumbered collection of items,
single out one item and label it with the number 1 .
Then for each next item increment this counting number with a unit 1 ,
and continue until the whole set is counted.
Counting can be problematic in practice,
but in theory the elements |No|1..| of a set of size n
have a one-to-one correspondence
(paired, indexed, named or counted)
with the subset from 1 to n of the natural numbers.
Use no numbers twice, and leave no numbers uncounted,
so this subset is unique,
no matter in what order the elements are counted.
An empty set |{}| of size 0 has no elements,
we count it without unit one.
Counting without halt |1...|
equals the size 'omega' ω of the set of natural numbers
(unlike counting without numbers).
The assumption the whole ω of this set exists,
is called the axiom of infinity.
Even an unbounded number like ω
can be counted upon in a next room, then counting
ω rooms, etcetera,
until another axiom knocks at the door...
Mathematical expressions are essentially lines of text,
compositions of signs in one discrete dimension,
associated 'ltr', in left to right direction.
Let uppercase letters from R to Z
stand for text variables in rules,
to express any permissible input sequence.
Variables are possibly empty, but only if the context allows that.
Write number variables or 'var' with a lowercase letter.
For an empty 'var', we can put or add 0 in its place.
In some array notations all entries must have value n>0
and empty positions and structures are removed first.
While our notation for "Big numbers" evolves,
smaller concepts appear first.
We like to index these earlier constructs on the left,
so that the structure of our array functions will expand to the right.
Our output is always a string of units 1 with length x ,
which can be a natural number,
some non-standard limit or a type of infinity.
Arrays contain rows of signs that can be repeated, nested, renested, etc.
These expanding structures equal the general recursive functions.
We see only the "pretty Big numbers",
most numbers are unpretty and remain hidden,
given that computational resources are final.
Take the universe mass of 2E93 standard kilogram photons,
with a star spangled lifespan of 5E64 Planck times.
In quantum superposition these represent 2^1E158 numbers,
so most numbers smaller than 2^^6 will never be expressed.
We can define a "Bigger number" or non-standard limit ψ ,
that lies right after any numbers expressible
within our standard array system for Big numbers,
given our physical resources.
If we input this initial unit ψ in our system,
the resulting output |ψ..|
is definitively topped by the next Bigger number ψ_1 with index 1 .
A succession of Bigger numbers ψ_k
can well be expressed within the same standard array structure.
Later such system revamps become enumerable in their own right.
All Bigger numbers are still finite,
but the same functionality applies to the ω -type
numbers in the higher infinite.
Just substitute the ordinal ω_k for ψ_k .
In general, if a mathematical construction can be repeated,
this construct in turn is countable by an index entry
within a larger system.
Note that numbers that enumerate sets,
function as members of sets.
This type of self-reference is a source of inconsistency,
when Gödel numbering statements about the whole of arithmetic.
Intuitively, to encode alphabets to maximally exploit signs
is a perilous method,
but does it help to get Big...?

$1.1.1. Unit addition
By addition of units one 1.. all the natural numbers are formed.
We adopt the decimal digits as constants for unitary numbers.
Constants from decimal a = 10
to unit notation. You can show more!
2 = 11
= 111
n = 1.. :n
We add two numbers a and b by putting them ab together.
A plus sign + can be used (instead of brackets)
to give precedence to other operations.
For example in a*1b = a+a*b we directly add 1b ,
but adding by plus + is postponed as usual.
Zero is nothing, which adds naturally at the right
n0 = n or left n = 0n by elimination.
On an empty 'var' place , we may put a zero 0 sign.
We use the negative unit - to decrement 1- = 0
from the right by convention,
so that n- subtracts 1 from non-empty n>0 .
$1.1.2. Rep notation
In Regular Expressions the quantifier X{k}
matches a character X or text group (X)
that is repeated at least :k times in a row.
We use the 'Regex' style repetition {k} for single signs alone.
In our 'Repex' notation we use dots and 'rep'
to select and repeat part of an expression.
Between the . dots ..
we select a sequence of signs,
that is to be repeated a total number of times
:n as specified in the 'rep'.
X.. :1 = X
X.. :1n = X..X :n
== X{n+1}
The selected item of the 'rep' :n
stands on the left side of the two .. dots,
or with n: on the right side,
or with :n: on both sides
and repeated from the outside to the inside of the expression.
Direction can be important.
During repetition an index i or j must be incremented.
Here we construct a multiplication *
of three numbers x_i step by step from the 'rep'.
1.*x_i.. :3 = 1.*x_i..*x_3 :2
= 1.*x_i..*x_2*x_3 :1
= 1*x_1*x_2*x_3
To append strictly 'ltr', keep track of the index value in the 'rep'.
Below we start with 0: and end with 4:
to add 5 different numbers n .
n_i.. 0:4 = n_0.n_i.. 1:4
== n_0n_1n_2n_3.n_i.. 4:4
= n_0n_1n_2n_3n_4
Adjacent digits in positional number systems are not added straight away;
this is not numerology. Given some radix |Radix|10|
by each next position a next factor |*10..| is represented,
to be multiplied by the digit there.
In a decimal number D|..d_i.d_0 m:| every digit
0≤d<10 is multiplied by a power of ten 10`i
which increases 'rtl' to the left. Then this series is added up.
Here we work out that number 'ltr', in reversed order.
d_0.+d_i*10^i.. :m =
.(d_i.*10..).. :i 0:m
Of the two 'reps' :i comes left, so it refers to the left double ..
dots in the expression.
The selection |rL1|*10| starts from the single . dot on its left.
The main 'rep' 0:m indexes both the digits |d_i|
and the subordinate 'rep' that multiplies ten to a power.
The repeated ( text ) with brackets can only run 'ltr' ..
from the start of the expression,
but a left . dot makes that clear.