Formal Language: A set of strings (or sequences) of symbols constructed from a given alphabet.
Alphabet (Σ): A finite set of symbols used to construct strings in a formal language.
String: A finite sequence of symbols from an alphabet.
Grammar: A set of production rules defining how strings in the language can be generated.
Syntax: The rules governing the structure or arrangement of symbols in a language.
Semantics: The meaning or interpretation of strings in the language.
Production Rule: A rule in a formal grammar that describes how symbols can be replaced by other symbols.
Derivation: The process of generating a string from the start symbol using production rules.
Terminal Symbol:
Non-terminal Symbol: A symbol in a grammar that can be replaced by other symbols (part of the production rules).A symbol in a grammar that appears in the strings of the language and cannot be replaced.
Language: A set of strings generated by a particular grammar or system of rules.
Finite State Automaton (FSA): A computational model that recognizes regular languages.
Pushdown Automaton (PDA): A computational model used for recognizing context-free languages.
Turing Machine: A computational model that can recognize recursively enumerable languages.
Type of Languages: Classification of languages based on their complexity (e.g., regular, context-free).
Context-free Language (CFL): A type of formal language that can be recognized by a pushdown automaton.
Context-sensitive Language: A type of language that is more complex and requires a linear-bounded automaton for recognition.
Recursive Language: A class of languages that can be decided by a Turing machine in a finite amount of time.
Regular Language: A type of formal language that can be recognized by a finite state automaton (FSA).
Chomsky Hierarchy: A classification of formal languages based on their generative power.