Toward accessible human-computer interaction
Advances in human-computer interaction (vol. 5)
Languages and machines: an introduction to the theory of computer science
Languages and machines: an introduction to the theory of computer science
Introduction to Languages and the Theory of Computation
Introduction to Languages and the Theory of Computation
Elements of the Theory of Computation
Elements of the Theory of Computation
Mental Models of Blind Users in the Windows Environment
ICCHP '02 Proceedings of the 8th International Conference on Computers Helping People with Special Needs
Accessibility in introductory computer science
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Turning automata theory into a hands-on course
Proceedings of the 37th SIGCSE technical symposium on Computer science education
jFAST: a java finite automata simulator
Proceedings of the 37th SIGCSE technical symposium on Computer science education
Introduction to Automata Theory, Languages, and Computation (3rd Edition)
Introduction to Automata Theory, Languages, and Computation (3rd Edition)
JFLAP: An Interactive Formal Languages and Automata Package
JFLAP: An Interactive Formal Languages and Automata Package
Non-sequential mathematical notations in the LAMBDA system
ICCHP'10 Proceedings of the 12th international conference on Computers helping people with special needs
Making turing machines accessible to blind students
Proceedings of the 43rd ACM technical symposium on Computer Science Education
GSK: universally accessible graph sketching
Proceeding of the 44th ACM technical symposium on Computer science education
Hi-index | 0.00 |
ProofChecker is a graphical program based on the notion of formal correctness proofs that allows students, both sighted and visually impaired, to draw a deterministic finite automaton (DFA) and determine whether or not it correctly recognizes a given language. Sighted students use the mouse and graphical controls to draw and manipulate the DFA. Keyboard shortcuts, together with the use of a screen reader to voice the accessible descriptions provided by the program, allow visually impaired students to do the same. Because the states of a DFA partition thelanguage over its alphabet into equivalence classes, each state has a language associated with it. Conditions that describe the language of each state are entered by the student in the form of conditional expressions with function calls and/or regular expressions. A brute-force approach is then used to check that each state's condition correctly describes all of the strings in its language and that none of the strings in a state's language meet the condition for another state. Feedback is provided that either confirms that the DFA correctly meets thegiven conditions or alerts the student to a mismatch between the conditions and the DFA. A student's DFA can be saved in an XML file and submitted for grading. An automated checking tool, known as ProofGrader, can be used to compare a student's DFA with the correct DFA for a given language, thus greatly speeding up the grading of student assignments.