Week 1 - Finite Automata Flashcards
What is a computational model?
An “idealised” computer that is used to set up a managable mathematical theory of computation.
Give an example of a computational model.
The finite state machine (finite automaton).
What is finite automata?
Models of computers with extremely limited memory.
Define the components of a finite automaton in computational terms.
A finite automaton is a 5-tuple (Q, Σ, δ, q0, F), where
Q is a finite set of states.
Σ is a finite set called alphabet.
δ is a function (QxΣ -> Q), the transition function.
q0∈Q is the initial state of the machine.
F⊆Q is the set of final states of the machine.
What is δ (transition function) in the finite automaton?
The function that decides what state the machine should go to next (Depending on the current state and the symbol it reads next).
TRUE OR FALSE: There can only be one final state for the finite automaton.
FALSE, there can be any number of final states, even no final states.
TRUE OR FALSE: There can only be one initial state for the finite automaton.
TRUE, there is only ever one initial starting state for the machine.
TRUE OR FALSE: The initial state can be a final state.
TRUE.
Describe the finite automaton in less computation mathematics terms.
It is a machine that starts in one state, and reads a certain input string. It reads the symbols one at a time, and with each symbol the machine may change state depending on the transition function. It ends once it has read the whole string.
What is the purpose of a finite automaton?
It processes a given string and accepts or rejects it depending on whether or not the machine ended the process in a state that part of the set of final states.
What is the F (Final states) for a finite automaton?
The set of states in the machine that if the process ended when in this state the machine could accept the input.
It is the set of final states.
Define the language of a finite automaton machine.
The set of strings that that machine accepts.
Why might a language be called regular?
A language is called regular if some finite automaton recognizes/accepts it.
How do you define/write that a language is accept be a given machine?
Machine is M
Language is L
L = ℒ(M).