JFLAP
JFLAP개발자 | 수잔 H. 로저, 듀크 대학교 |
---|---|
안정된 릴리스 | 7.1 / 2018 |
저장소 | |
플랫폼 | 자바 SE |
이용가능기간: | 영어 |
유형 | 교육용 소프트웨어 |
웹 사이트 | www |
JFLAP(Java Formal Languages and Automata Package)는 Java로 작성된 인터랙티브 교육 소프트웨어로, 주로 학부 수준 또는 고등학교용 고급 토픽으로 사용됩니다.JFLAP을 사용하면 유한 상태 머신의 프로그래밍과 같은 구조를 작성 및 시뮬레이션하고 비결정론적 유한 오토마톤(NFA)을 결정론적 유한 오토마톤(DFA)으로 변환하는 등의 증거를 실험할 수 있습니다.
JFLAP는 1993년부터 국립과학재단의 지원을 받아 Duke University에서 개발 및 유지되고 있습니다.프리웨어이며 최신 버전의 소스 코드를 사용할 수 있지만 [1]몇 가지 제한이 있습니다.JFLAP은 Java 애플리케이션으로 실행됩니다.
역사
JFLAP 이전에는 Susan H. Rodger와 그의 학생들이 1990년경 Rensselaer Polytechnic Institute의 컴퓨터 과학부에서 개발한 오토마타 이론과 관련된 여러 소프트웨어 도구가 있었습니다.1992년 DIMACS 2012 워크숍에서 처음 발표된 논문은 [2]NPDA라고 불리는 관련 도구를 설명했습니다(이 논문은 1994년 후반에 DIMACS [3]시리즈로 발표되었습니다).그 후 NPDA는 유한 상태 기계와 튜링 기계를 포함한 FLAP로 진화했다.1993년에 FLAP(Formal Languages and Automata Package)에 관한 논문이 [4]발표되었습니다.그 당시 이 도구는 C++와 X Window로 작성되었습니다.1994년경 Rodger는 Duke University로 이전하여 도구 개발을 계속하였습니다.1996년경, PLAP는 Java로 변환되어 1996년에 최초로[5] JFLAP가 발행되었습니다.그동안, 다른 툴은 독립형 툴로서 개발되어 나중에 JFLAP에 통합되었습니다.예를 들어, 1999년의 한 논문에서 JFLAP가 어떻게 NFA를 DFA로 최소 상태 DFA로 변환하는 등 건설 유형 증명을 실험할 수 있게 되었는지 설명하고 있으며, 또 다른 예로 NPDA를 CFG로 변환하거나 [6]그 반대도 가능합니다.2002년에 JFLAP는 Swing으로 전환되었습니다.2005-2007년에는 JFLAP를 사용하는 14개 기관을 대상으로 연구가 실시되었습니다.2009년의 이 연구에 관한 논문에 의하면, JFLAP 를 사용하고 있는 학생은, JFLAP 를 사용하는 것으로, 수업에 보다 몰입하는 느낌이 들고, 개념을 학습하기 [7]쉬워졌다고 생각하고 있었습니다.
JFLAP의 역사는 jflap.org 사이트에서 다루어지고 있으며, 1990년부터 JFLAP 및 관련 도구를 사용해 온 Rensselaer Polytechnic Institute 및 Duke University 학생 35명 이상이 포함되어 있습니다.
Chakraborty, Saxena 및 Katti의 2011년 12월 ACM Advaces 매거진의 "50년간의 오토마타 시뮬레이션: 리뷰"라는 제목의 논문은 JFLAP에 [8]대해 다음과 같이 기술하고 있습니다.「이 툴을 개발하기 위한 노력은 오토마타 시뮬레이션 분야에서 유례없는 것입니다.그 결과, 현재는 오토마타를 시뮬레이트하기 위한 가장 정교한 툴이 되었습니다.현재는 오토마타와 관련 분야에 관한 많은 토픽을 다루고 있습니다.이 툴은 오토마타 시뮬레이션을 위한 툴 중 가장 문서화되어 있습니다." "이 툴은 최첨단 그래픽을 사용하여 가장 사용하기 쉬운 툴 중 하나입니다.이 툴은 지금까지 개발된 오토마타의 시뮬레이션을 위해 가장 널리 사용되는 툴입니다.100여 개국의 수많은 대학에서 수천 명의 학생들이 이 제품을 사용해 왔습니다.
JFLAP에서 다루는 토픽
- 유한 상태 기계
- 정규 문법
- 정규 표현
- 비결정론적 유한 오토마톤에서 결정론적 유한 오토마톤에 대한 증명
- 정규 문법에 대한 결정론적 유한 자동화에 대한 증명
- 정규식에 대한 결정론적 유한 자동화에 대한 증명
- 정규어를 위한 보조어법
문맥이 없는 언어에 관한 토픽은 다음과 같습니다.
- 푸시다운 오토마타
- 문맥 자유 문법
- Wikt에서의 프루프: 컨텍스트프리 문법에 대한 비결정론적 푸시다운 자동화
- 자동화를 위한 문맥 자유 문법에 대한 증명
- 문맥이 없는 언어를 위한 보조어 사용
- CYK 파서
- LL 파서
- SLR 파서
반복 열거형 언어에 대한 항목:
기타 관련 토픽:
릴리스
JFLAP은 현재 버전 7.1로 출시되어 있습니다.
어워드
2007년에 Rodger와 그녀의 학생들은 소프트웨어 [9]JFLAP의 엔지니어링 교육 코스웨어에 관한 Needs 프리미어 어워드의 최종 후보였습니다.
2014년에는 JFLAP [10]개발 등 CS 교육에 기여한 공로로 ACM Karl V. Karlstrom Excellent Educator Award를 수상했습니다.
JFLAP 관련 서적
로저와 토마스 핀리는 2006년 JFLAP에 관한 책을 썼으며 오토마타 이론 코스의 보충서로 사용할 수 있다.Gopalakrishnan은 계산 공학에 관한 책을 썼고, 그의 책에서 그는 기계 실험을 위해 JFLAP를 사용할 것을 장려했다.JFLAP은 또한 운동에 사용할 것을 제안합니다.Mordechai Ben-Ari는 SPIN 모델[13] 체커의 원리라는 책을 썼는데, 이 책에서 JFLAP가 언급되어 있습니다.특히 비주얼라이징 비결정주의(VN) 소프트웨어에서는 JFLAP 파일 형식의 유한 오토마타를 읽어내는 방법에 대해 설명합니다.Maxim Mozgovoy는 JFLAP의[14] 스크린샷을 사용하는 오토마타 이론 교재를 집필했다.다른 사람들은 어떤 식으로든 JFLAP의 사용을 언급하는 책을 썼다.그 중 일부는 JFLAP의 웹사이트에 언급되어 있다.
레퍼런스
- ^ Susan H. Rodger. "JFLAP 7.0 LICENSE". Retrieved 2 October 2016.
- ^ D. Caugherty; S. H. Rodger (1992). "NPDA: A Tool for Visualizing and Simulating Nondeterministic Pushdown Automata". DIMACS Workshop March 12–14, 1992: 365–377.
- ^ Nathaniel Dean and Gregory E. Shannon, Editors (1994). DIMACS Series in Discrete Mathematics and Theoretical Computer Science: Computational Support for Discrete Mathematics, DIMACS Workshop, March 12-14, 1992. Vol. 15. United States of America: American Mathematical Society. ISBN 0821866052.
{{cite book}}
:author=
범용명(도움말)이 있습니다. - ^ M. LoSacco; S. H. Rodger (1993). "FLAP: A Tool for Drawing and Simulating Automata". EDMEDIA '93, World Conference on Educational Multimedia and Hypermedia: 310–317.
- ^ M. Procopiuc, O. Procopiuc; S. Rodger (1996). "Visualization and Interaction in the Computer Science Formal Languages Course with JFLAP". 1996 Frontiers in Education Conference: 121–125.
- ^ E. Gramond; S. H. Rodger (1999). "Using JFLAP to Interact with Theorems in Automata Theory". Thirtieth SIGCSE Technical Symposium on Computer Science Education: 336–340. doi:10.1145/299649.299800. ISBN 1581130856. S2CID 15210587.
- ^ Susan H. Rodger; Eric Wiebe; Kyung Min Lee; Chris Morgan; Kareem Omar; Jonathan Su (2009). "Increasing Engagement in Automata Theory with JFLAP". Fortieth SIGCSE Technical Symposium on Computer Science Education: 403–407.
- ^ P. Chakraborty; P.C. Saxena; C. P. Katti (2011). "Fifty years of automata simulation: a review". ACM Inroads. 2 (4): 59–70. doi:10.1145/2038876.2038893. S2CID 6446749.
- ^ Needs Premier 프레스 릴리즈: http://www.jflap.org/Premier2007_pressrelease_v2.pdf
- ^ ACM 발표: http://awards.acm.org/award_winners/rodger_2853521.cfm
- ^ Susan Rodger; Thomas Finley (2006). JFLAP: An Interactive Formal Languages and Automata Package. Sudbury, MA: Jones and Bartlett. ISBN 0-7637-3834-4.
- ^ G. L. Gopalakrishnan (2006). Computation Engineering: Applied Automata Theory and Logic. Springer Science+Business Media LLC. ISBN 978-0387244181.
- ^ Mordachai Ben-Ari (2008). Principles of the Spin Model Checker. Springer-Verlag London Limited. ISBN 978-1846287695.
- ^ Maxim Mozgovoy (2010). Algorithms, Languages, Automata, and Compilers. Jones and Bartlett. ISBN 978-0763776275.