1 of 27

Mathematics,

Information and Computing

  • Prof. Pierre Collet�Équipe CSTB, Laboratoire ICUBE, UMR CNRS 7357 Université de Strasbourg
  • UNESCO Complex Systems Digital Campus UniTwin

1

2 of 27

Mathematics, information and computing

​

​

​

​

Let no-one ignorant of geometry enter

2

3 of 27

For Plato, geometry = mathematics

In Euclidean space, defined by a vector space:

3

Axiom

Meaning

Associativity of vector addition

u + (v + w) = (u + v) + w

Commutativity of vector addition

u + v = v + u

Identity element of vector addition

There exists an element 0 ∈ V, called the zero vector, such that v + 0 = v for all v ∈ V.

Axiom

Meaning

Inverse elements of vector addition

For v ∈ V, there exists −v ∈ V, such that v + (−v) = 0.

Identity element of multiplication

1v = v, where 1 denotes the multiplicative identity in F.

Distributivity of multiplication w.r.t. addition  

a(u + v) = au + av

4 of 27

What is “computing”?

Etymology of “compute” : from com "with, together" (see com-) + putare "to reckon," originally "to prune," from PIE root *pau- (2) "to cut, strike, stamp."*

​

Signification : 3 + 3 = 6

​

Please note that to com-pute is to add and take the result

Vector spaces are based on addition (you can add vectors)

4

*https://www.etymonline.com/word/computer

5 of 27

What is “logic”?

Etymology of “logic”?

from logos "reason, idea, word" (see Logos).*

Wikipedia definition:

Logic is the study of correct reasoning. It includes both� formal and informal logic. Formal logic is the science of� deductively valid inferences or logical truths.

​

What algebra is associated to logic?

5

*https://www.etymonline.com/word/logic

6 of 27

Boolean algebra

Wikipedia definition: In mathematics and mathematical logic, Boolean algebra is a branch of algebra. It differs from elementary algebra in two ways. First, the values of the variables are the truth values true and false, usually denoted 1 and 0, whereas in elementary algebra the values of the variables are numbers.

​

Is Boolean algebra different from�elementary algebra?

6

7 of 27

Boolean algebra: a complemented distributive lattice

2 operators: OR (∨) and AND (∧)

OR, similar to + (1st law), AND similar to * (2nd law) but with an important difference:

7

a

b

a + b

a OR b

a * b

a AND b

0

0

0

0

0

0

0

1

1

1

0

0

1

0

1

1

0

0

1

1

2

1

1

1

8 of 27

In logic, 1+1 =... 1 !!!

“Computers” work on logical circuits:

  • 1 (True) = 5 Volts / 0 (False) = 0 Volts
  • True + True ≠ 2*True

This means that… Com-Puters… cannot compute

(1+1 = 1: they cannot count!!!)*

​

So how do we compute with a computer???

What are the implications???

8

*Also very nice because if 1 = 5 Volts, value 10^6 = 5 million Volts!

​

9 of 27

Properties of a “complemented distributive lattice”

A lattice is an algebraic structure (L,∨,∧), consisting of a set L and two binary, commutative and associative operations ∨ and ∧ on L satisfying the following axiomatic identities for all elements a, b ∈ L (sometimes called absorption laws):

  • a∨(a∧b)=a
  • a∧(a∨b)=a

If we also have a partial order between a and b and a greatest element, then we have associativity and commutativity, but also a “strange” distributivity:

  • a∧(b∨c)=(a∧b)∨(a∧c), similar to a*(b+c)=(a*b)+(a*c) but also:
  • a∨(b∧c)=(a∨b)∧(a∨c) !!!

​

What do we do with that?

(What can a “computer” do if it cannot compute?)

​

9

10 of 27

Understanding Logical deduction

Theophrastus of Lesbos (Tyrtamus) c. 371-287 BC and Eudemus of Rhodes, c. 370 300 BC worked on syllogisms (συλλογισμός in Greek) = Inference / Conclusion.

Modus Ponens:

If A is true and A ⇒ B is true then B is true

- Socrates is a human (A is true)� - All humans are mortal (A ⇒ B)� - Therefore Socrates is mortal (⇒ B is true)

Modus Tollens / Contraposition:

If B is false and A ⇒ B then A is false

- Zeus is non-mortal (B is false)� - All humans are mortal (A ⇒ B)� - Therefore Zeus is non-human (⇒A is false)

​

10

a

b

a⇒b

⅂a⋁b

0

0

1

1

0

1

1

1

1

0

0

0

1

1

1

1

11 of 27

Understanding Logical deduction

Theophrastus of Lesbos (Tyrtamus) c. 371-287 BC and Eudemus of Rhodes, c. 370 300 BC worked on syllogisms (συλλογισμός in Greek) = Inference / Conclusion.

Modus Ponens:

If A is true and A ⇒ B is true then B is true

- Socrates is a human (A is true)� - All humans are mortal (A ⇒ B)� - Therefore Socrates is mortal (⇒ B is true)

Modus Tollens / Contraposition:

If B is false and A ⇒ B then A is false

- Zeus is non-mortal (B is false)� - All humans are mortal (A ⇒ B)� - Therefore Zeus is non-human (⇒A is false)

​

11

1st principle of Descartes philosophy:

  • “Cogito ergo sum”

“I think, therefore I am”

​

⇒ Fun meme on Internet

​

12 of 27

Understanding Logical deduction

Theophrastus of Lesbos (Tyrtamus) c. 371-287 BC and Eudemus of Rhodes, c. 370 300 BC worked on syllogisms (συλλογισμός in Greek) = Inference / Conclusion.

Modus Ponens:

If A is true and A ⇒ B is true then B is true

- Socrates is a human (A is true)� - All humans are mortal (A ⇒ B)� - Therefore Socrates is mortal (⇒ B is true)

Modus Tollens / Contraposition:

If B is false and A ⇒ B then A is false

- Zeus is non-mortal (B is false)� - All humans are mortal (A ⇒ B)� - Therefore Zeus is non-human (⇒A is false)

​

12

a

b

a⇒b

⅂a⋁b

0

0

1

1

0

1

1

1

1

0

0

0

1

1

1

1

1st principle of Descartes philosophy:

  • “Cogito ergo sum”

“I think, therefore I am”

13 of 27

Understanding Logical deduction

Theophrastus of Lesbos (Tyrtamus) c. 371-287 BC and Eudemus of Rhodes, c. 370 300 BC worked on syllogisms (συλλογισμός in Greek) = Inference / Conclusion.

Modus Ponens:

If A is true and A ⇒ B is true then B is true

- Socrates is a human (A is true)� - All humans are mortal (A ⇒ B)� - Therefore Socrates is mortal (⇒ B is true)

Modus Tollens / Contraposition:

If B is false and A ⇒ B then A is false

- Zeus is non-mortal (B is false)� - All humans are mortal (A ⇒ B)� - Therefore Zeus is non-human (⇒A is false)

​

13

a

b

a⇒b

⅂a⋁b

0

0

1

1

0

1

1

1

1

0

0

0

1

1

1

1

1st principle of Descartes philosophy:

  • “Cogito ergo sum”

“I think, therefore I am”

​

Do you see the�reasoning error?

​

14 of 27

Understanding Logical deduction

Theophrastus of Lesbos (Tyrtamus) c. 371-287 BC and Eudemus of Rhodes, c. 370 300 BC worked on syllogisms (συλλογισμός in Greek) = Inference / Conclusion.

Modus Ponens:

If A is true and A ⇒ B is true then B is true

- Socrates is a human (A is true)� - All humans are mortal (A ⇒ B)� - Therefore Socrates is mortal (⇒ B is true)

Modus Tollens / Contraposition:

If B is false and A ⇒ B then A is false

- Zeus is non-mortal (B is false)� - All humans are mortal (A ⇒ B)� - Therefore Zeus is non-human (⇒A is false)

​

14

a

b

a⇒b

⅂a⋁b

0

0

1

1

0

1

1

1

1

0

0

0

1

1

1

1

1st principle of Descartes philosophy:

  • “Cogito ergo sum”

“I think, therefore I am”

​

Do you see the�reasoning error?

The correct inversion is:

If I am not, therefore, I think not

15 of 27

Computers don’t do data: they deal with “information”

Definition of data, information, knowledge and intelligence:

  • Data is a number = 20

(cannot be represented with a boolean: 1 / 0, T / F)

  • Information is data with a “unit”: 20C, 20kg, 20km

(defines “truth”)

  • Knowledge is information with a context (semantics):
    • 20km is not far by car
    • 20km is far on foot
  • Intelligence is how entities (information) interact:
    • ​

15

16 of 27

Information processor

Jacquard Loom, patented in 1804!

16

17 of 27

The 1804 Jacquard machine uses a pro-gram

Etymology of program:�from pro "forth" (see pro-) + graphein "to write" (see -graphy).

Telegram, instagram, etc…

​

Program = what is pre-written (and the punch card of a Jacquard machine is a real pro-gram that the machine will turn into a pattern)

17

18 of 27

1st large scale information processing

“Mecanography”: storing information (and not patterns) in punch cards first used by René Carmille during WW2, who created:

  • In 1930, he imagined the (still current) French social-security number
  • In 1941 the central record of French civilians (to raise a counter-army)

With his database, he could (using operators such as AND, OR, NOT) do statistics on the population and he created the French National Institute of Statistics (INSEE)

18

19 of 27

1st large scale information processing

“Mecanography”: storing information (and not patterns) in punch cards first used by René Carmille during WW2, who created:

  • In 1930, he imagined the (still current) French social-security number
  • In 1941 the central record of French civilians (to raise a counter-army)

With his database, he could (using operators such as AND, OR, NOT) do statistics on the population and he created the French National Institute of Statistics (INSEE)

19

This is “informatics” = the science of information based on 0s and 1s (boolean logics)

20 of 27

What could “computers” be?

Necessity to have an additive framework�(where 1+1 = 2)

This is the domain of analog computers and cybernetics!

"the study of systems of any nature which are capable of receiving, storing, and processing information so as to use it for control" (Andrey Kolmogorov);

Leading to the notion of neural networks!

20

21 of 27

Latest development in 2023

IBM Research's latest analog AI chip for deep learning inference:

A 64-core mixed-signal in-memory compute chip based on phase-change memory for deep neural network inference with analogue in-memory computing (AIMC)

​

​

21

https://www.nature.com/articles/s41928-023-01010-1

22 of 27

Implication for current “digital computers”

  • Difficulty to represent numbers (5 on 4 bits = 0101)
  • Difficulty to represent negative numbers (-5 = 1011)
  • Impossibility to represent 0.1 in a binary computer:
    • 0.1D = 0.000110011001100110011001100110011…B
    • = 0.10000000000000000555111512312578…D

Perfect for C floats (where 0.1 + 0.2 = 0.3) but not in� doubles (where 0.1+0.2 = 0.30000000000000004D)

NEVER TEST A FLOATING POINT VALUE IN A PROGRAM!

22

23 of 27

Bridging the gap between information and numbers?

Claude Shannon’s Information Theory (1948)

  • How many bits are necessary to represent a decimal value? log2 10 = 3.3219…
  • How many bits are necessary to represent a letter in a 26 letters alphabet? log2 26 = 4.700…

This is the definition of ENTROPY

23

24 of 27

Entropy of French?

Probability of occurrence of letters in French text:

​

​

​

-(.0811 log(.0811) + .0081 log(.0081) + .0338 log(.0338) +� .0428 log(.0428) + .1769 log(.1769) + …)

= 3.954 bits / character… in theory…

Is there a difference between theory and practice?

24

25 of 27

Huffman encoding (optimal encoding)

  • Coding “si ton tonton tond mon tonton” optimally

(s:1), (i:1), (_:5), (t:6), (o:7), (n:7), (d:1), (m:1)

25

26 of 27

Conclusion…

  • Elementary algebra (vector spaces) that use numbers�is additive: 1+1 = 2
  • Logic algebra (booleans, implementing True / False�is not additive: 1+1 = 1 (True + True ≠ 2*True)
  • Therefore, “computers” cannot compute!
  • The French/German word for computer science (informatics) is more correct (science of information)

26

27 of 27

What to remember from this talk

  • Representation of floating point numbers in digital “computers” has no solution ⇒ to be exact,�one MUST use integers! (even for floating point values)
  • Analog computers exist and they are “coming back” for generative deep neural networks (cf. IBM 2023 AI chip)
  • Foundational paper addressing the problem:�Claude Shannon, A Mathematical Theory�of Communication, The Bell System�Technical Journal Vol. 27, pp. 379–423,�July, October, 1948.

27