MENTAL
 Main Menu
 Language
 Principles
 Maximum Compression Principle


Maximum Compression Principle
 MAXIMUM
COMPRESSION
PRINCIPLE

"Understanding increases with compression." (Jorge Wagensberg)

"To understand is to compress" (Gregory Chaitin).

"Understanding is the minimum expression of the maximum shared" (Jorge Wagensberg).



The principle of maximum compression seeks, in every expression, its simplest representation, its maximum compression by means of the following forms:
  1. The choice of the simplest expression among all the equivalent ones: the one with the smallest length (including internal blanks).

  2. The elimination of unnecessary parentheses and blanks.

  3. The use of the representation mechanism (potential substitution).

  4. Using a variable naming convention, in order to avoid having to specify that a certain variable name belongs to a set (natural numbers, integers, real numbers, etc.).

Examples

Arithmetic expressions:
  1. x+y+x // ev. 2*x+y
  2. a+b+b+b+b+a // ev. (2*a + 3*b)
  3. (aa + bb + cc) // ev. aa+bb+cc
  4. (a + b + a + a + a) // ev. 3*a+b
  5. a+a+a+a+a // ev. 4*a
  6. a*a*a*a*a // ev. a^4
  7. a^a^a^a^a // ev. a(^^)4
  8. (3*a + 2*b) // self-evaluates (can't compute anymore)
Sequences and sets:
  1. (a) // ev. a
  2. (((a)))) // ev. a
  3. (a b c) // ev. abc
  4. {a b c} // ev. {a b c}
  5. { a } // ev. {a}
  6. {⟨(nn>5 ← nN)⟩} // ev. {⟨(nn>5)⟩}
Substitutions:
  1. (x = a) // ev. x=a
  2. (x = (a b c)) // ev. x=abc
  3. (x = ( (a = b) (b = c) (c = d)) // ev. x=(a=b b=c c=d)
Ranges:
  1. ((1...5)) // ev. 1...5
  2. (((( 1...5 )))) // ev. ( 1...5 )
Potential substitutions:

The inverse evaluation is performed, which more compactly describes the operation.
  1. ⟨(f(x y) =: (x+y x*y)⟩
    (a+b a*b) // ev. f(a b)

  2. ⟨(g(x) =: (x xx xxx xxx xxxx)⟩
    (a aa aaa aaaa aaaa) // ev. g(a)

  3. (h(x) =: (x xx xxx xxx xxxx))
    (x xx xxx xxx xxxx) // ev. h(x)
    (y yy yyy yyy yyy yyyy) // self-evaluates

  4. (a a a a a a) // ev. a★4

  5. (a a a ...) // ev. a★

  6. (2a 2b 2c) // ev. (2[a b c])

  7. (10 11 12 13 14) // ev. ( 10...14 )