A Java Implementation of Peirce’s Existential Graphs Bram van Heuveln Department of Philosophy State University College at Oneonta March 22, 2001.

Slides:



Advertisements
Similar presentations
1 Knowledge Representation Introduction KR and Logic.
Advertisements

CS0004: Introduction to Programming Visual Studio 2010 and Controls.
Structured Design. 2 Design Quality – Simplicity “There are two ways of constructing a software design: One is to make it so simple that there are obviously.
Tutorial 8: Developing an Excel Application
Section 9.1 Identify multimedia design guidelines Identify sources of multimedia files Explain the ethical use of multimedia files Describe multimedia.
User Interface Design Yonsei University 2 nd Semester, 2013 Sanghyun Park.
VIDE als voortzetting van Cocktail SET Seminar 11 september 2008 Dr. ir. Michael Franssen.
Organisation for Economic Cooperation and Development (OECD)
C. Varela; Adapted w/permission from S. Haridi and P. Van Roy1 Declarative Computation Model Defining practical programming languages Carlos Varela RPI.
NaLIX: A Generic Natural Language Search Environment for XML Data Presented by: Erik Mathisen 02/12/2008.
1 Introducing Collaboration to Single User Applications A Survey and Analysis of Recent Work by Brian Cornell For Collaborative Systems Fall 2006.
Formalizing Alpha: Soundness and Completeness Bram van Heuveln Dept. of Cognitive Science RPI.
Existential Graphs: Beta Introduction to Logic. Alpha Review: Symbolization ‘P’ ‘not P’ ‘P and Q’ ‘P or Q’ ‘if P then Q’ F EG PP PP P  Q P  Q P 
1 CA 208 Logic Logic Prof. Josef van Genabith Textbooks:  The Essence of Logic, John Kelly, Prentice Hall, 1997  Prolog Programming, Third Edition, Ivan.
Existential Graphs and Davis-Putnam April 3, 2002 Bram van Heuveln Department of Cognitive Science.
Using the EG Applet Bram van Heuveln. Contents General Comments –Some general comments regarding the use of the applet Work Area –Instructions for creating.
Alpha: Symbolization and Inference Bram van Heuveln Minds and Machines Lab RPI.
User interface design Designing effective interfaces for software systems Objectives To suggest some general design principles for user interface design.
Video on the Web John H. Krantz Hanover College. Outline What is Video Acquiring with a Digital Camera Creating with ImageJ Editing with QuickTime Delivering.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Improvements and Extensions of the EG Interface Fall 2002.
MCA –Software Engineering Kantipur City College. Topics include  Formal Methods Concept  Formal Specification Language Test plan creation Test-case.
Multimedia Enabling Software. The Human Perceptual System Since the multimedia systems are intended to be used by human, it is a pragmatic approach to.
Discrete Mathematics and its Applications
1.3 Executing Programs. How is Computer Code Transformed into an Executable? Interpreters Compilers Hybrid systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 10 Slide 1 Critical Systems Specification 3 Formal Specification.
Introduction to Computer Science. A Quick Puzzle Well-Formed Formula  any formula that is structurally correct  may be meaningless Axiom  A statement.
1 An Introduction to TI SmartView Emulator Software (Version 2.0) Jim Eiting Developmental Mathematics Department Collin County Community College August.
Concepts and value of TI-Nspire™ Technology Module A.
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
Essence and Accident in Software Engineering By: Mike Hastings.
Presented by Steve Beutler, Career Counselor Minot Public Schools Minot, North Dakota.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
 1. Which is not one of the six principles that address crucial issues fundamental to all school math programs? A. Curriculum B. Assessment C. Measurement.
Where Innovation Is Tradition SYST699 – Spec Innovations Innoslate™ System Engineering Management Software Tool Test & Analysis.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 9 Slide 1 Formal Specification l Techniques for the unambiguous specification of software.
Applications Software. Applications software is designed to perform specific tasks. There are three main types of application software: Applications packages.
The Electronic Geometry Textbook Project Xiaoyu Chen LMIB - Department of Mathematics Beihang University, China.
Chapter 1: A First Program Using C#. Programming Computer program – A set of instructions that tells a computer what to do – Also called software Software.
CSC 480 Software Engineering Lecture 19 Nov 11, 2002.
University of Sunderland CDM105 Session 5 Web Authoring Tools The past and present A history of web authoring tools and an overview of Macromedia Dreamweaver.
Unit 1 – Improving Productivity Ayesha begum. 1.1Why did you use a computer? What other systems / resources could you have used? We use a computer because.
Chapter 10: Compilers and Language Translation Invitation to Computer Science, Java Version, Third Edition.
Deduction, Proofs, and Inference Rules. Let’s Review What we Know Take a look at your handout and see if you have any questions You should know how to.
March 16 & 21, Csci 2111: Data and File Structures Week 9, Lectures 1 & 2 Indexed Sequential File Access and Prefix B+ Trees.
Operating Systems (CS 340 D) Dr. Abeer Mahmoud Princess Nora University Faculty of Computer & Information Systems Computer science Department.
WXGE6103 Software Engineering Process and Practice Formal Specification.
This tutorial has been created to help educators and CSME collaborators navigate the computer application “Audacity” to facilitate the creation of podcasts,
WinKE A Pedagogic Tool for Teaching Logic and Reasoning.
CMPF144 FUNDAMENTALS OF COMPUTING THEORY Module 5: Classical Logic.
Existential Graphs Intermediate Logic. Existential Graphs A graphical logic system developed by C.S. Peirce almost 100 years ago. Peirce studied semiotics:
Software Architecture
E.g.: MS-DOS interface. DIR C: /W /A:D will list all the directories in the root directory of drive C in wide list format. Disadvantage is that commands.
A Java implementation of Peirce’s Alpha Graphs Bram van Heuveln (RPI) Dennis Higgins (SUNY Oneonta) SUNY Oneonta undergraduate programmers: Elizabeth Hatfield,
Unit 1 – Improving Productivity Instructions ~ 100 words per box.
A Java implementation of Peirce’s Existential Graphs* faculty advisors: Bram van Heuveln (Philosophy) Dennis Higgins (Math & Computer Science) student.
A Java implementation of Peirce’s Existential Graphs
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor.
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
Chapter# 6 Code generation.  The final phase in our compiler model is the code generator.  It takes as input the intermediate representation(IR) produced.
XP Tutorial 8 New Perspectives on Microsoft Windows XP 1 Microsoft Windows XP Object Linking and Embedding Tutorial 8.
1 A Basic Introduction to Flash. Outline What is a flash? Macromedia Flash MX 2004 Flash concepts Flash Demos Conclusion Additional help 2.
Processing Hardware, Software. Hardware Hardware Processing is performed by a computer ’ s central processing unit and is measured by the clock speed.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS ( NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS (PRACTICAL PART) Tutorial 2 : Matlab - Getting Started.
The Existential Graphs Project Rensselaer Reasoning Group September 12, 2001.
6. (supplemental) User Interface Design. User Interface Design System users often judge a system by its interface rather than its functionality A poorly.
Power Point Mistakes Contrasting background and text Microsoft Office PowerPoint 2007 enables users to quickly create high-impact, dynamic presentations,
Computer Software: Programming
Great Theoretical Ideas in Computer Science
Presentation transcript:

A Java Implementation of Peirce’s Existential Graphs Bram van Heuveln Department of Philosophy State University College at Oneonta March 22, 2001

Overview Background: Logic Systems Peirce’s Existential Graphs The Project Implementation Demonstration

Logic Systems A Logic Puzzle The body of Mr. X was found murdered in his bedroom by the housemaid. Who did it? Inspector Clouseau collects the following information: Only the butler and the housemaid have a key to Mr. X’s bedroom Only the butler knows about the secret alarm that Mr.X activates at night in his bedroom The alarm did not go off.

Logic Systems Our Reasoning “Either the butler or the housemaid killed Mr. X. However, if the housemaid killed Mr. X, the alarm would have gone off, and the alarm didn’t go off, so the housemaid is in the clear. Therefore, the butler did it.” Can we formalize our reasoning? Yes. This is what logic systems do.

Logic Systems Step 1: Logical Symbolization Use symbols to represent simple propositions: H: The housemaid did it B: The butler did it A: The alarm went off Use further symbols to represent complex claims: H  B: The housemaid or the butler did it H  A: If the housemaid did it, the alarm would go off ~A: The alarm did not go off

Logic Systems Step 2: Logical Inference Transform symbolic representations using basic rules that reflect valid inferences: H  B HAHA ~A ~H B 2, 3 MT A. Assumption (A.) , 4 DS

Logic Systems Completeness and Soundness Logic Systems need to be complete and sound: Expressive Completeness: The system needs to be able to represent every possible logical expression. Deductive Completeness: The system needs to be able to infer anything that logically follows. Deductive Soundness: The system should not be able to infer anything that does not logically follow. Logic Systems can be proven to be complete and sound.

Logic Systems The Trade-off The rules in logic systems reflect simple logical inferences. The simpler the inferences, the fewer rules the system will have to have in order to be complete, as more complex rules will reduce to sequences of more simple rules. However, this also means that proofs get longer. In other words, there is a trade-off between the number of rules in the system and the length of a given proof.

Logic Systems Example of the Trade-off H  B HAHA ~A H A A ,4  E ~A ~H 3 R 4-6 ~I B B H ~B H ~H B B A. 10 R 7 R 8 R 1,8-9,10-14  E ~E 24 rules: 2 steps 11 rules: 12 steps

Existential Graphs Peirce’s Existential Graphs A graphical logic system developed by Peirce almost 100 years ago. Peirce studied semiotics: the relationship between symbols, meanings, and users. Peirce found the linear notation and accompanying rules of traditional logic systems (which he helped develop) involved and unintuitive. Existential Graphs allow the user to express logical statements in a completely graphical way.

Existential Graphs Syntax of EG ‘P’ ‘not P’ ‘P and Q’ ‘P or Q’ ‘if P then Q’ TraditionalEG PP ~P P&Q PQPQ PQPQ P Q QP P QP

Existential Graphs Inference Rules of EG Double Cut (De)Iteration Erasure Insertion PP Q P Q QP QP P Q PP

Existential Graphs Proof in EG A B DE DC E BHAH ABH HAB DE H HAB

Existential Graphs Strength of EG Compact Only Propositions and Cuts; Only 4 rules Easy to use Less chance of making mistakes Fast Transform rather than rewrite Intuitive Many logical relationships come for free Maximum Logical Power Expressively complete; deductively complete

Existential Graphs Student Response Personal experience from teaching Existential Graphs in logic class: Even though students were forced to draw successive snapshots, students were more happy with Existential Graphs than traditional systems: easier faster less mistakes more fun Students were very excited at the idea of having an interactive interface

The Project Motivation EG presents an interesting alternative to traditional systems Interface for construction and manipulation of Existential Graphs can be used in logic class Software does not seem to exist Conceptual advantages of the dynamic character of logic proofs in EG remain unexplored Nice example of cross-curricular collaboration Nice example of integrating technology into the classroom

The Project Required Functionality The user should be able to: Generate Existential Graphs Draw, delete, move, resize, and copy propositions and cuts Manipulate Existential Graphs Apply rules of inference The system should: Keep track of the logical relationships as expressed by the Existential Graphs Check if the rules of inference are correctly applied by the user

The Project Desired Additional Functionality File I/O To load and save existential graphs To load and save proofs as a series of images Proof Editor Video buttons to play and rewind proofs Edit existing proofs Help and Tutorial Instructions for use Examples

The Project The Project Team Supervisors: Bram van Heuveln (Philosophy) Dennis Higgins (Math and Computer Science) We obtained a TLTC Fast Tech Grant We invited three upper division Computer Science students to develop this software: Elizabeth Hatfield Debbie Kilpatrick Lut Wong We held weekly meetings to discuss progress

The Project Division of Labor

The Project Project Phasing We decided to implement in two phases: Phase one: develop a Work Area Interface with full editing capabilities for generating and editing Existential Graphs Main problem: Correspondence between graphical operations and internal logical data structure Phase two: develop a Proof Area Interface for the manipulation of Existential Graphs Main Problem: Perform checking to insure user selections are legal

The Project Current Status Both phases are now complete, and we have a minimally working system Additional helpful features still need to be implemented