Monoids, computer science and evolution

                   Vladimir Cuesta †
                   Instituto de Ciencias Nuc...
Monoids, computer science and evolution                                                                                   ...
Monoids, computer science and evolution                                                                                   ...
Monoids, computer science and evolution                                                                                   ...
Monoids, computer science and evolution                                                                                   ...
Monoids, computer science and evolution                                                                                   ...
Upcoming SlideShare
Loading in...5
×

Monoids, Computer Science And Evolution

188

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
188
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Monoids, Computer Science And Evolution

  1. 1. Monoids, computer science and evolution Vladimir Cuesta † Instituto de Ciencias Nucleares, Universidad Nacional Aut´noma de M´xico, 70-543, Ciudad de M´xico, M´xico o e e e Abstract. I present a model for computing as an arithmetic of base two, additionally I represent it as two monoids ({0, 1}, +) and ({0, 1}, ·), where ” + ” is a sum and ” · ” is a product. Later, I define a model for reverse evolution, the pass of generations in opposite order, genealogical tree or family tree by the numbers 0 and 1 for the sum and the product of the previous monoids. I present a different couple of monoids and I show diagrams for a lot of generations. 1. Introduction Computer science is one pillar in our private and social life, the impact in the science of our time and specifically in modern technology is indisputable. By other side, medical and genetic science are important in our century, too. In the present paper, using medical ideas I show a model in computing for describing genealogical trees with zeros and ones, with that model we can walk backward along generations, for doing that I use basic graph theory, because the use of the theory of monoids and binary arithmetic is not enough. I hope that the model can be use forward in time. 2. Computer Science, binary arithmetic and monoids 2.1. Computer science and binary arithmetic Theoretical computing is one of the most important branches inside of computer science (see [1] and [2] for further study), it serves as a platform for making progress in our present technology. In this subsection and all along the present work I understand computing as an arithmetic of the numbers 0 and 1 with base two and as products based on the number two. Let a be a natural number or zero, we can express a as a = 2 × s + r, (1) I mean, we can write a as two times s plus a residue r where s and r are natural numbers, we will understand the number a as the residue r in an arithmetic of base two (or the arithmetic of the computer science). I show some examples 0 = 2 × 0 + 0 = 2 0, 1 = 2 × 0 + 1 = 2 1, 2 = 2 × 1 + 0 = 2 0, 3 = 2 × 1 + 1 = 2 1, 4 = 2 × 2 + 0 = 2 0, 5 = 2 × 2 + 1 = 2 1, 6 = 2 × 3 + 0 = 2 0, 7 = 2 × 3 + 1 = 2 1, (2) and so on. I will understand computing as sums ” + ” and products ” · ” of the numbers 0 and 1, in the previous notation = 2 means the result in base two. As a second step of the construction I present the following set of products 0 = 0 · 0 = 2 0, 0 = 0 · 1 = 2 0, 0 = 1 · 0 = 2 0, 1 = 1 · 1 = 2 1, (3) which will be useful, too. † vladimir.cuesta@nucleares.unam.mx
  2. 2. Monoids, computer science and evolution 2 2.2. Computer science and monoids Let A be a non empty set and ∗ an application of the form (or composition law) ∗ : A × A → A, (4) We understand a monoid as a pair (A, ∗), where A is a non empty set and ∗ is a composition law (see [3] for details). With the previous definition, we can understand computing as two monoids (A, +) and (A, ·), where A = {0, 1}, ” + ” is the sum of base two and ” · ” is the product of base two. + 0 1 · 0 1 0 0 1 0 0 0 1 1 0 1 0 1 3. Evolution 3.1. Generations I was born in a historical moment, I have brothers and sisters all of us have parents and my parents had parents and so on. In the following subsection I present an illustrative diagram based on non oriented graphs (see [4] for details) or equivalently tree diagrams, according to this the upper side is the first generation counting in the opposite direction of time, the second row represents the second generation and the last one is the third generation and so on. Daughter, son (5) Mother Father Maternal grandmother Maternal grandfather Paternal grandmother Paternal grandfather . . . . . . . . . . . . . . . . . . . . . . . . in the paper I use a theory based in the previous diagram. I present the evolution of different generations in the opposite arrow of time, I use the model for the usual binary arithmetic of computing and a different construction (the interested reader can see the use of genetic models in computing at [5] and in the references therein). 3.2. Usual binary arithmetic First and second generations (for the sum) The usual binary arithmetic for computing is the following: + 0 1 0 0 1 1 1 0 I have presented this table a lot of times. However in our case I present it as a tree diagram and the result is 0 1 1 0 (6) 0 0 0 1 1 0 1 1 the upper side is the first generation and the lower side is the second.
  3. 3. Monoids, computer science and evolution 3 First, second, third generations and so on (for the sum) Following the same reasoning I present the first, second, third generations and so on 0 0 0 0 (7) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. . . . . . . .. . . . . . . . 1 1 1 1 (8) 0 1 0 1 0 1 0 1 0 0 0 1 0 0 1 0 1 1 0 1 1 1 1 0 . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. . . . . . . .. . . . . . . . 1 1 1 1 (9) 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. . . . . . . .. . . . . . . . 0 0 0 0 (10) 1 1 1 1 1 1 1 1 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 0 . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. . . . . . . .. . . . . . . . the suspension points represent the fourth, fifth generations and so on. First and second generations (for the product) Previously I have shown a set of diagrams for generations in the reverse order, all of them based in the sum table ” + ”, the next step is to show the diagrams for the product table, · 0 1 0 0 0 1 0 1 I show these for the first and second generations. 0 0 0 1 (11) 0 0 0 1 1 0 1 1 First, second, third generations and so on (for the product)
  4. 4. Monoids, computer science and evolution 4 For finishing this section I exhibit the evolution in opposite order till the third generation and so on. 0 0 0 (12) 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 0 (13) 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 1 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 0 0 (14) 0 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0 1 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 (15) 0 1 0 0 1 1 . . . . . . . . . . . . . . . . . . . . . . . . 0 (16) 0 1 0 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . 0 (17) 0 1 1 0 1 1 . . . . . . . . . . . . . . . . . . . . . . . .
  5. 5. Monoids, computer science and evolution 5 0 0 0 1 (18) 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . .. . . . . . . .. . . . . . . . 3.3. Second example In this subsection I present a different construction for computing, I define a new operation using the sum ” + ” and product ” · ”, ∗2 is a new one and the product ” · ” is the usual a ∗2 b = 1 + b + a · b, (19) ∗2 0 1 · 0 1 0 1 0 0 0 0 1 1 1 1 0 1 First and second generations (for the ∗2 operation) The tree diagrams resume the previous table of the ∗2 operation 0 1 1 1 (20) 0 1 0 0 1 0 1 1 First, second, third generations and so on (for the ∗2 operation) The opposite arrow of time for the first three generations is represented for the diagrams 0 0 0 (21) 0 1 0 1 0 1 0 1 0 0 0 1 1 0 0 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 (22) 0 0 0 1 0 1 . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 (23) 1 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 0 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  6. 6. Monoids, computer science and evolution 6 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 0 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 (24) 1 1 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The tree diagrams for the product is the same as in the previous subsection and I do not show it. 4. Conclusions and perspectives Along this work I have studied computing as a theory based on binary arithmetic and a couple of monoids, I have defined different operations and I have presented another pair of monoids. Additionally I paint a set of diagrams representing the inverse evolution for generations in computer science. For future work I discuss the following, I have the sum table ” + ” for computing. However, I can study another set of tables, for example a ∗3 b = 1 + a + b + a · b, a ∗4 b = a + b + a · b and so on. Another option is the study of mutations or modifications in the genealogical tree, I mean in the sum table for ” + ” we use 0 + 0 =2 0, 0 + 1 =2 1, 1 + 0 =2 1 and 1 + 1 =2 0. However, in a moment we can force the appearance of another diagram, for example, 1 + 1” =2 ”1 and the genealogical tree will be modified. References [1] Harris, John W., Stocker Horst, Handbook of mathematics and Computacional Science, New Haven, Connecticut and Frankfurt, Germany, Springer-Verlag (1998), [2] Manna, Zohar, Mathematical Theory of computation Stanford University, Dover (1974), [3] Gentile, Enzo R., Estructuras algebraicas I, Facultad de Ciencias Exactas y Naturales, Universidad de Buenos Aires; Buenos Aires, Argentina (1967), [4] Trudeau, Richard J., Introduction to graph theory, Kent State University, Dover (1993), [5] Carpentieri, Marco, A Genetic System Based on Simulated Crossover: Stability Analysis and Relationships with Neural Nets, Evolutionary Computation 17 (2): 167-2001, MIT (2009).

×