![]() ![]() ![]() Some of the things you learn when you cover these enable you to understand the limits of computing itself. Turing machines, equivalent to general computation (anything you can do with a computer).Context-free grammars can describe "languages" (sets of valid strings) where the validity at a certain point in parsing the string does not depend on what else has been seen. Text/input parsers and compilers use these when regular expressions aren't powerful enough (and one of the things you learn in studying finite automata is what regular expressions can't do, which is crucial to knowing when to write a regular expression and when to use something more complicated). Push-down automata, equivalent to context-free grammars.They can do a lot, but they can't match balanced sets of parentheses. They are a simple method of describing a set of valid strings using basic characters, grouping, and repitition. Regular expressions are widely used in programming for matching strings and extracting text. Finite automata, which are equivalent to regular expressions.The three basic ones you should encounter are, in increasing order of power: ![]() They are the theoretical underpinnings of concepts widely used in computer science and programming, and understanding them helps you better understand how to use them (and what their limits are). ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |