(AB 유 AAB U ABA) * 나는 그것을했지만 나는 그것의 정확성에 대한 몇 가지 의견을 싶습니다 정확하면 을 : 우리는 (AB U AAB U ABA) * 하나를 단순화 할 수 있습니다 더욱이? 만약 그렇지 않다면 무엇을 놓쳤습니까? EDIT : 3 개의 모든 최종 상태에서 초기 상태로 전자 전환이 누락 된 것으로 보입니다. 전자 전환의 초기 상태로
정규 표현식이 주어졌으며 NFA와 DFA로 변환하고 싶습니다. 다음은 정규 표현식입니다. a (b | c) * a | 여기 NFA http://img148.imageshack.us/img148/4237/nfa.png 와 DFA 것 : AAC의 * B 그리고 나는 톰슨의 알고리즘을 사용하여 NFA이를 coverted DFA http://img9.imagesh
렉서에 DFA 최소화기를 구현하려고하지만 해당 DFA가 이미 최소 DFA 인 것처럼 보이지 않는 DFA를 생성 할 수 없습니다. 표현. 나는 후미 정규 표현식에서 톰슨 구조를 사용하여 작성된 NFA에서 DFA를 구성하고 있습니다. 용 책에 묘사 된 내용은 거의 정확히 그대로입니다. 렉서를 만들려면 NFA의 몇 개가 시작 상태에서 엡실론 전환을 사용하여 결합
내 DFA를 최소화하기 위해 Brzozowski의 알고리즘을 구현하려고합니다. 다음과 같은 알고리즘이 있습니다. r()는 NFA와 D()의 반전이다 DFA = d(r(d(r(NFA))))
는 DFA에 NFA로 변환합니다. 그러나 나는 Google에서 검색하는 r()의 의미가 무엇인지 이해하지 못하고 많은 정보를 제공하지 않습니다. NFA의 r()은 누구
특정 regex implementation이 DFA 또는 NFA를 기반으로하는지 여부에 관계없이 궁금한 점이 있습니다. 나를 알아낼 수있는 출발점은 무엇입니까? 누구도 물을 수 있습니다 : 무엇을 찾고 있습니다? 기본 패턴 및/또는 특성은 무엇입니까? 좋은 설명 링크 또는 약간의 비교 (직접 정규식에 헌신하지 않더라도) 완벽하게 괜찮습니다.
I * R은 식 NFA를 나타내는 이미지를 발견 하였다. 제 질문은 : 두 번째 노드와 세 번째 노드를 연결하는 화살표가 없어야한다는 것입니까? 내가 첫 번째 심볼은 내가 두 번째 노드에 들어가 읽을 때,하지만 나가는 화살표가 없기 때문에 어디에도 갈 수 없어로부터 "RR"문자열이있는 경우이 방법. http://imageshack.us/f/641/scree
나는 장난감을 이식하여 약간의 클로저를 배우려고한다 NFA regexp matcher. 분명히 내 주요 문제는 그래프를 표현하고 조작하는 것입니다. 나는 실제 해결책을 썼지 만 구현 (gensym을 사용하여 포인터를 에뮬레이트 함) 기본적으로 내 입안에 나는 맛이있다. 그래프를 표현하고 일반적인 가독성 및 관용구를 개선 할 때주의해야 할 사항이 있습니까?