Theory Of Computation Flashcards
What is a boundary?
The defined constraints that you must obey when solving a problem.
What are 2 examples of boundaries?
Time - time needed to solve problem.
Space - memory required to solve the problem.
What things should be considered when solving a problem?
The resources needed.
Are the existing resources adequate.
How will you use the resources.
What is automation?
The setting into motion of the plans put in place to solve the problem.
What is an advantage of abstraction and decomposition?
It helps with understanding the problem at hand and therefore makes the solving process easier.
What is representational abstraction?
A representation arrived at by removing unnecessary details.
What is abstraction by generalisation?
Grouping by common characteristics to arrive at a hierarchical relationship of the “is a kind of” type.
What is procedural abstraction?
Assumes all solutions can be broken into procedures.
We know what the procedures must do but know how.
What is function abstraction?
Grouping of common functions that can be used to solve a problem.
What is data abstraction?
Organising and structuring data to produce a particular view of the data that is useful for the programmer.
What is problem abstraction?
Reducing a problem down into its smallest component parts until the underlying processing requirements that solve the problem are identified.
What is information hiding?
The removal of unnecessary information for the user of a program. For example creating a nice and simple GUI.
What is a finite state machine? Hint (SOS)
A theoretical device that stores the status of something at any given time and can operate on inputs that allow it to change status.
What does an FSM consist of?
States, inputs and outputs.
What are the 4 important things about FSMs? Hint (COTM)
Used in controlling processes, local conditions only (direct input).
The machine is only in one state at a time.
It can move from one state to the next when initiated by a triggering event or condition (a transition).
They have limited memory (memory = number of states).
What are the 2 types of FSM?
Mealy machine.
Moore machine.
What is a Mealy machine?
A machine who’s output is determined by its current state and the values of its inputs.
What is a Moore machine?
A machine who’s output is determined solely by its current state.
When describing FSMs what is an output?
A response caused by making a transition.