home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-06-22 | 4.7 KB | 106 lines | [TEXT/CCL ] |
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; File: HNET-TEST.LISP
- ; Author: Dan Suthers
- ; Created: 08-Jun-88 19:30:34
- ; Modified: 24-Jul-88 01:05:24 (Dan Suthers)
- ; Language: LISP
- ; Package: USER
- ;
- ; Description: For testing HNET.LISP when it is changed. One should load
- ; this file after loading HNET and check the printed results.
- ; Do it for both uncompiled and compiled versions of this
- ; file, in SEPARATE lisp sessions.
- ;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- (in-package 'user)
-
- (require :HNET)
-
- (use-package :HNET)
-
- (format T "~%~%---------- HNET TESTS: MAKING AN HNET AND DEFINING TERMS ----------")
- (format T "~%Defining a HNET called TEST:")
- (format T " ~S" (hnet test :info "A test hnet."))
- (format T "~%The HNET-INFO is:")
- (format T " ~S" (hnet-info (sm:gets 'hnet 'test)))
-
- (format T "~%Defining some terms for HNET TEST:")
- (format T " ~S" (define-term T nil 'test))
- (format T " ~S" (define-term 'thing '(t) 'test))
- (format T " ~S" (define-term 'animal '(thing) 'test))
- (format T " ~S" (define-term 'plant '(thing) 'test))
- (format T " ~S" (define-term 'mineral '(thing) 'test))
- (format T " ~S" (define-term 'dog '(pet canine) 'test))
- (format T " ~S" (define-term 'cat '(pet canine) 'test))
-
- (format T "~%~%---------- UNDEFINED TERMS ----------")
- (format T "~%Undefined terms should be (PET CANINE):")
- (format T " ~S" (undefined-terms 'test))
- (format T "~%Deleting CANINE as super of CAT:")
- (format T " ~S" (delete-superordinate 'cat 'canine 'test))
- (format T "~%Adding FELINE as super of CAT:")
- (format T " ~S" (add-superordinate 'cat 'feline 'test))
- (format T "~%Undefined terms should be (CANINE PET FELINE):")
- (format T " ~S" (undefined-terms 'test))
- (format T "~%Defining PET:")
- (format T " ~S" (define-term 'pet '(animal) 'test))
- (format T "~%Undefined terms should be (CANINE FELINE):")
- (format T " ~S" (undefined-terms 'test))
- ;;; Cannot use query functions until (undefined-terms) is nil ...
- (format T "~%Defining the remaining terms:")
- (format T " ~S" (define-term 'canine '(animal) 'test))
- (format T " ~S" (define-term 'feline '(animal) 'test))
- (format T " ~S" (define-term 'tiger '(feline) 'test))
- (format T " ~S" (define-term 'wolf '(canine) 'test))
- (format T "~%Undefined terms should be (): ~S" (undefined-terms 'test))
- (format T "~%Defining then undefining FUM:")
- (format T " ~S" (define-term 'fum '(thing) 'test))
- (format T " ~S" (undefine-term 'fum 'test))
- (format T "~%FUM should not be defined:")
- (format T " ~S" (defined-p 'fum 'test))
-
- (format T "~%~%---------- SUPERORDINATES & SUBORDINATES ----------")
- (format T "~%Superordinates of CAT should be (FELINE PET):")
- (format T " ~S" (superordinates 'cat 'test))
- (format T "~%Superordinate* of CAT should be (CAT PET FELINE ANIMAL THING T):~%")
- (format T " ~S" (superordinate* 'cat 'test))
- (format T "~%Subordinates of ANIMAL should be (FELINE CANINE PET):")
- (format T " ~S" (subordinates 'animal 'test))
- (format T "~%Subordinate* of ANIMAL should be (ANIMAL PET CANINE FELINE TIGER WOLF DOG CAT):~%")
- (format T " ~S" (subordinate* 'animal 'test))
- (format T "~%Subordinate-Leaves of ANIMAL should be (TIGER WOLF DOG CAT):~%")
- (format T " ~S" (subordinate-leaves 'animal 'test))
-
- (format T "~%~%---------- TERM-INFO tests ----------")
- (format T "~%Setting term-info of DOG:")
- (format T " ~S" (setf (term-info 'dog 'test) 'happy))
- (format T "~%INFO of DOG should be HAPPY:")
- (format T " ~S" (term-info 'dog 'test))
-
- (format T "~%~%---------- SUBSUMPTION-RELATION tests ----------")
- (format T "~%Relation between DOG and CANINE is SUBORDINATE:")
- (format T " ~S" (subsumption-relation 'dog 'canine 'test))
- (format T "~%Relation between DOG and THING is SUBORDINATE:")
- (format T " ~S" (subsumption-relation 'dog 'thing 'test))
- (format T "~%Relation between FELINE and CAT is SUPERORDINATE:")
- (format T " ~S" (subsumption-relation 'feline 'cat 'test))
- (format T "~%Relation between ANIMAL and CAT is SUPERORDINATE:")
- (format T " ~S" (subsumption-relation 'animal 'cat 'test))
- (format T "~%Relation between CANINE and FELINE is INCOMPARABLE:")
- (format T " ~S" (subsumption-relation 'canine 'feline 'test))
- (format T "~%Relation between WOLF and FELINE is INCOMPARABLE:")
- (format T " ~S" (subsumption-relation 'wolf 'feline 'test))
-
- (format T "~%~%---------- GENERAL INFO ----------")
- (format T "~%Defined Terms should be all of the above mentioned: ~%")
- (format T " ~S" (defined-terms 'test))
- (format T "~%HNET-ROOTS is (T):")
- (format T " ~S" (hnet-roots 'test))
-
- (format T "~%~%---------- END OF HNET TEST ----------
- Note: to be sure, try loading both lisp and compiled versions of this
- test, IN DIFFERENT LISP SESSIONS, so the second test does not rely on
- things defined in the first.~%")
-
- ;;; EOF