2011年8月20日星期六

Chapter 1 - the Need for the Depiction of Time-space Problems




Chapter 1 - the Need for the Depiction of Time-space Problems


Chapter 1 - The Need for the Depiction Of Time-Space Problems

1.1 My Motivation for Writing this Document

I have been working as a programmer and software designer for around 5 years immediately. One of the areas
where I feel there is a lack of understanding (in general) , is the space of time-space depiction of problems,
without sending the physicality of those problems into consideration.

For example, we could establish an MP3 athlete in several ways :
a) through software,
b) a combination of software and hardware, or
c) through hardware(digital logic) itself.

These 3 physicalities are the solution for the same problem (creating a melody player that melodramas MP3 files) ,
and at a plausible level, perform the accurate same activities i.e. :
i) Take an MP3 file as an input,
ii) Read the MP3 file,
iii) Convert the contents of the MP3 document into audio.

All engineering punishments have their share of experts, but there are very few people that can use
their expertise in any other field of logic. For sample, a piece chart engineer might be a "whiz" by her/his
profession, but this does not assure that she/he could write equally excellent software programs.

My purpose is to argue the institution and design of "logic" modules at an abstract level, so as to
qualify people (peruse laymen) favor me to think of logic design independant of their physical declarations.
For example, a person who can write software ought be competent to understand the control flows comprised in digital
logic design (chips) and vice-versa.

The afterward generation of computing provides various challenges for logicians :
i) Usage of Human DNA for computation,
ii) Modelling electronic circles based on biological control flows (eg. embryonics),
iii) Artificial Intelligence, where a machine is made to perform complex computations that were earlier thought
to be only possible via human heads,
iv) Complex pattern matching, such as Computer Vision, photograph recognition software,
v) "Intelligent" medicine, where the people body's bio-chemical reactions are used to execute computations, to
cure/prevent hazardous ailments,
vi) Depiction and simulation of complex systems such as climate patterns, thrifty systems and even human
psychology.

Some generic problems that engineers face today (not necessarily mutually exclusive from the above) are :
i) Understanding of design issues,
ii) Compiler/Parser design,
iii) Complex Automata,
iv) Understanding how grammars can be used to design, analyze and appliance any variety of logic, etc. etc.

These series of articles/chapters quest to cater a platform for logicians to implement/design complex logic for any
of the above kinds of systems (physical or mental).


1.2 Core Philosophy

There are primarily 2 variables that our physical macrocosm deals with: Space and Time. In essence, any system
alternatively process can be described in terms of sequences of memorabilia. The word "series" specifies time (which is comparative),
and the word "events" specifies space.

A simple example shall illustrate this concept. Say you want to describe the process of travelling to some place, say
Bombay (assuming, of course, the traveller is not currently in Bombay). This process can be described by the following
steps :
i) Call the travel agency,
ii) Buy a ticket,
iii) Reach your city's airport at departure appointment and time,
iv) Board the flight at your city's airport,
v) Get off at Bombay hangar.
In the above example, the "space" is specified along every of the steps, and the "time" can be specified along the order in
which the treads are carried out.
Without the steps and the order of steps, the process would be incomplete. If any step is left out, the traveller
cannnot approach Bombay. If the sequence of the steps is changed from i), ii), iii), iv), v) to i), ii), iii), v), iv),
the described process ambition not make sense, as you cannot obtain off at the Bombay airport ahead boarding the flight for
Bombay.

Formally, whether the steps mentioned in the example above are S1, S2, S3, S4 and S5, the process of going to Bombay can
be specified as emulated :
S -> P
P -> s1 s2 s3 s4 s5
The 2 lines specified above can be specified as a grammar S, where S1, S2, S3, S4 and S5 are called terminals. P is
shrieked a non-terminal. These 2 lines can be described as the rules of Grammar S.

In a nutshell, any process or system can be described for a sequence of terminals and non-terminals.


1.3 Notation

To introduce the readers to the exegesis to be used in these articles, a extra perfected example is needed than the one
specified in section 1.2. Before that, we need to understand the various erection blocks of logic and grammars.
Consider the following bunch of rules :
S -> A B C D
A -> s1 | s2
B -> s3
C -> s4
D -> s5
In the above grammar S: A, B, C and D are non-terminals. s1, s2, s3, s4, s5 are terminals.
The '|' symbol specifies an OR operation. This means that the non-terminal A can can accept either terminal s1 or s2.
The rule A -> s1 | s2 can also be specified as :
A -> s1
A -> s2

Let us take a closer see at this grammar.

1.3.1 Non-terminals (A, B, C, D)

Non-terminals are grammars in their own right, and are sequences of terminus symbols. They are introduced to
introduce modularity in the grammar S. If we do not use the non-terminals A, B, C and D, the rules for grammar S
would be It’s about time:

S -> s1 s3 s4 s5 | s2 s3 s4 s5
The above rule manner that the grammar S can accept any of the following sequences of terminal symbols (s1 s3 s4 s5) and
(s2 s3 s4 s5).

As this means of creating grammars is very heavy for long and complex sequences of terminals with plenty of
OR operations in among, we build a terminal A that specifies the OR action, and produce a fashionable bunch of rules that
describes grammar S :

S -> A s3 s4 s5
A -> s1 | s2
or,
S -> A s3 s4 s5
A -> s1
A -> s2

1.3.2 Terminals (s1, s2, s3, s4, s5)

Terminals signify each cement or "actual" event to the system. In the example in section 1.2, each "step" involved
in travelling to Bombay is a terminal. All possible sequences of terminals that are subject to the rules specified by
the grammar in answer specify the conduct of a system or process (or for namely material, anything quantifiable in time
and space).


1.4 A More Advanced Example

Let us take distinct example that will further illuminate the conceptions introduced in the last few sections.

The following steps specify the algorithm logically followed by any ATM machine while a user tries to withdraw
cash :
i) Accept the user's ATM card, (Step S1)
ii) If the media is not working, publish a message and stop processing the user's transaction, (Step S2)
iii) If the medium is going, ask the user because her/his password, (Step S3)
iv) Accept the password from the user, (Step S4)
v) Ask the user how much cash she/he absences to withdraw, (Step S5)
logo) Accept the cash input value from the user, (Step S6)
vii) Send the user's card Id, password and cash withdrawal amount to the banking mainframe, (Step S7)
viii) Wait for reply from the mainframe, (Step S8)
ix) If the reply message from the mainframe says incorrect password, tell the user so and stop processing
the transaction, (Step S9)
x) If the reply message says "balance in list not enough", then differentiate the user so, and stop processing
the transaction, (Step S10)
xi) If always goes well and the reply message gives an affirmative feedback, then output the cash into the cash-box
for the user to collect, (Step S11)
xii) Tell the user to collect her/his ATM card from the slot. (Step S12)

The following grammar A specifies the above algorithm :

S -> A
A -> S1 B
B -> S2 S12 | S3 S4 S5 S6 S7 S8 C S12
C -> S9 | S10 | S11

Note : a) A, B and C are non-terminals.
b) S is simply used to specify the starting rule of a linguistics, i.e., the rule
to be thought first.
c) Note that the B and C non-terminals have been used to abstract the "OR" conditionals in steps, ii), iii),
ix), x) and xi). Refer to section 1.3.1 for understanding the usage/representation of non-terminals in grammars.




没有评论:

发表评论