summation of theoretical computer science

 

It is already one year since I began to study the computation theory. I regretted very much that I didn’t try my best to work on it. Therefore, the element knowledge of mine on this aspect is extremely poor. However, I will try to give an overview of my study, to tell myself I should work harder!
 
I will give some facets informally, as well as the introduction. The purpose is only to give an overview of my study. But of course, I will use my own language to describe them.
 
Process Calculus
 
Maybe Process Calculus is the first kind computation theory I study, that is, CCS. It is also a course of mine. I can still remember the first example of the CCS book, which takes a company into account. The employer and employee of this company were considered as processes, the communication of which were taken as the action. CCS can describe this phenomenon very exactly.
A CCS System is made up of many agents. Each agent can do input or output action and has a unique name. A CCS system can receive an input from the environment or give an output to the environment. Furthermore, it can also do an internal τ action, that is, two internal agents, one give a output, and the other one receive it.
After giving the definition, we can research the attribute of the CCS system. For example, how can we say two Processes are equivalent? This lead to a new definition ‘coming, namely, bisimulation. It means that we can define the equivalence of two processes by observation, namely, if agent B can do the action which A can do and agent A can do the action which B can do, we say A and B are equivalent. As to another aspects on CCS, there are a lot of attribute we can talk about. Anyhow, CCS is a very interesting theory. Its computational power is also very strong. It’s also the basis of pi-calculus and a lot of transition system. It’s very worthwhile to study it well.
 
Formal language theory
 
Maybe I can give the formal definition of it firstly. In mathematics, logic, and computer science, a formal language L is a set of finite-length sequences of elements drawn from a specified finite set A of symbols. I think every person who had studied computation theory knew about it. There are a lot of examples about it, NRE, RE, and so on. I am fond of this when I studied the computation theory in university. Although it is a bit abstract than programming, it gives a very pretty explanation to programming. It helps me make a rapid progress in programming and the understanding of it. For me, I think the following 2 kinds of languages are very important. One is Recursively enumerable language, that is, a language which can be recognized by Turing Machine; Another is Recursively language, that is , a language which can be determined by Turing Machine. Informally speaking, we must distinguish recognition and determination, namely, recognition is that TM can say not YES but NO; However, Determination is that TM can say YES but cannot say NO.
 
P System
 
Maybe I can say that P System is the computing model I spend most of time to study. P System comes from Membrane Computing, which is a branch of natural computing.
It has a hierarchical structure; lots of sub-membranes are settled in the skin membrane. The membrane which has not sub-membrane is called element membrane. There are Multisets and rewriting rules in the membrane. Multisets evolve as the rewriting rules in parallel mode. Therefore, the system is considered as synchronous. In each step, Multiset in each membrane must evolve as the rules; the time when P system cannot fire rules we call halt. And the sequences of these steps are called computation. It has been proved that P System with at least 5 membranes is computational universal. A not of further research are being done to deduce the number of membrane which is computational universal.
 
Automata theory
 
In fact, I am not very familiar with automata theory. However, I do really think that this aspect is very worthwhile to research. In theoretical computer science, Automata theory is the study of abstract machines and the problems they are able to solve. Generally speaking, we can consider this abstract machine as a 5-tuple, that is, (Q, Z, W, S, F). Q is a finite set of states; Z is a finite set of symbols; W is a transition function as Q×Z -->Q; S is the start state and F is a set of states of Q (called accept states). The implementing of the system is not difficult. The system receives input from the environment, and transformed as the transition function till halt. If the system can at last reach the accept state, the computation is successful. On the contrary, the computation is failed. A lot of computing models are related to Automata theory. Recently, A not of newly Automata appeared, like w-automata, p-automata and so on.
 
Register Machine
 
Register Machine is also called Counter machine. I noticed it when I saw it was used to prove some interesting lemma in P system. Informally speaking, A counter machine is made up of many counter, a counter is set which has three commands, that is, ADD, SUB and RESET. There are also lots of commands guiding the implementation of the counter. When a computation starts, each counter is reset to 0. Then, the machine implements the commands from the beginning to the end. At last, the number, which the counters give out, is the computation result. In another aspect, Register machine is very useful in proving the computational universality because register machine is equal to Turing machine in computation power.
 
I know I just give a lot of nonsense above about my study of theoretical computer science and even one of my purposes to write this paper is to practice my written English. I also know I have a lot of flaws in the study of this domain, but still I will work hard to get more knowledge on it. Try my best!
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值