From f8aa7437ee4ac49ea7044b46a6170b80cddd8526 Mon Sep 17 00:00:00 2001 From: jrtechs Date: Tue, 6 Nov 2018 11:53:51 -0500 Subject: [PATCH] Started working on CS Theory Review Post. --- .../programming/CS -Theory-Exam-2-Review.md | 97 ++++++++++++++++++ .../media/CSTHEORY/DFAMinimalProof.png | Bin 0 -> 12240 bytes .../media/CSTHEORY/DFAMinimalTable.png | Bin 0 -> 3442 bytes 3 files changed, 97 insertions(+) create mode 100644 blogContent/posts/programming/CS -Theory-Exam-2-Review.md create mode 100644 blogContent/posts/programming/media/CSTHEORY/DFAMinimalProof.png create mode 100644 blogContent/posts/programming/media/CSTHEORY/DFAMinimalTable.png diff --git a/blogContent/posts/programming/CS -Theory-Exam-2-Review.md b/blogContent/posts/programming/CS -Theory-Exam-2-Review.md new file mode 100644 index 0000000..a359d11 --- /dev/null +++ b/blogContent/posts/programming/CS -Theory-Exam-2-Review.md @@ -0,0 +1,97 @@ +This a very high level review post that I am making for myself and other people taking CS Theory. +If you want to lean about the theory behind the content in this blog post I recommed looking else where. +This post will cover how to solve typical problems relating to topics covered by my second CS Theory exam. + +## Myhill-Nerode Theorem + +### Definition +L is regular if and only if it has a finite index. The index is the maximum number of elements thar are pairwise distibguishable. +Two strings are said to be pairwise distinguishable if you can append something to both of the strings and it makes one string +accepted by the language and the other string non-accepting. +The size of an index set X equals the number of equivalence classes it has. Each element in the language is accepted by only +one equivalence class. + +### Problem Approach + +Prove that language L is regular. + +1) Define a set X which is infinite in size - this doesn;t necesarrily need to be in the language. + +2) Make a general argument that show that each element in X is pairwise distinguishable. +Pick any two elements x, y in X and show that if you append z to them one is accepted by the language and +the other is not in the language. + +### Example + +Prove the following language is non-regular: + +$$ +L={ww^r | w \in {0,1}^*} +$$ + +answer: + +1) + +$$ +X = {(01)^i | i \geq 0} +$$ + +Pick any 2 elements of X and show pairwise distinguishable + +$$ +x = (01)^i, y = (01)^j | i \neq j +$$ + +suppose we pick +$$ +z = (10)^i\\ +xz \in L\\ +yz \notin L +$$ + + +## DFA minimization algorithm + +Types of Problems: +- Prove DFA is minimal +- Minimize the DFA + +The argument for DFA minimization comes from the Myhill-Nerode theorem. Given +a DFA, if you can form a set of strings which represent each state and they are all +pairwise distinguishable, then the DFA is minimal with that many states. + + +### Prove DFA is minimal + +For these types of problems you simply construct a table and show that each state is pairwise distinguishable. +To show pairwise distinguishability you have to show that there exists a string where if appened to one element +makes it accepted by the language but pushes the other string out of the language. + +ex: Prove the following DFA is minimal. + +![DFA Example](media/CSTHEORY/DFAMinimalProof.png) + +$$ +X = {\epsilon, b, bb, ba} +$$ + +![DFA Example](media/CSTHEORY/Table.png) + + +### Minimize the DFA + + + +## Pumping lemma for regular languages + +## Context-free grammars, closure properties for CFLs + +## Parse trees, ambiguity + +## Chomsky Normal Form + +## Pushdown automata + +## Construction to convert CFG to a PDA + diff --git a/blogContent/posts/programming/media/CSTHEORY/DFAMinimalProof.png b/blogContent/posts/programming/media/CSTHEORY/DFAMinimalProof.png new file mode 100644 index 0000000000000000000000000000000000000000..4fd2d67e3cd1a75ac099635e5a39213451f96710 GIT binary patch literal 12240 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 literal 0 HcmV?d00001 diff --git a/blogContent/posts/programming/media/CSTHEORY/DFAMinimalTable.png b/blogContent/posts/programming/media/CSTHEORY/DFAMinimalTable.png new file mode 100644 index 0000000000000000000000000000000000000000..f161ba44b4670b842f681c4a7122864e9d53ab21 GIT binary patch literal 3442 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 literal 0 HcmV?d00001