하이로그
HiLog하이로그는 고차 구문을 가진 프로그래밍 로직으로 임의의 용어를 술어와 함수 위치에 나타낼 수 있다.[1]그러나 하이로그의 모델론은 일차적이다.구문론적으로 하이로그는 1차 주문 논리를 엄격히 확장하지만, 하이로그는 이 논리에 포함될 수 있다.
HiLog는 1989년에 처음 설명되었다.[2]그것은 나중에 다방면의 논리로 확대되었다.[3]
XSB 시스템은 HiLog 구문을 구문 분석하지만, XSB에 HiLog를 통합하는 것은 부분적일 뿐이다.특히 HiLog는 XSB 모듈 시스템과 통합되어 있지 않다.HiLog의 완전한 구현은 Flora-2 시스템에서 이용할 수 있다.
상당히 간단한 변신을 통해 하이로그를 1차 로직에 접목할 수 있는 것으로 나타났다.[1]예를 들어.p(X)(Y,Z(V)(W))다음 첫 번째 순서로 포함됨:apply(p(X),Y,apply(apply(Z,V),W)).[1]
RIF(Rule Interchange Format)의 논리 기반 방언 프레임워크(REF-FLD)는 HiLog와 F-logic의 기초가 되는 아이디어에 주로 기반을 두고 있다.[4]
예
아래의 모든 예에서 대문자로 표시된 기호는 변수를 나타내고 쉼표는 대부분의 논리 프로그래밍 언어에서와 같이 논리적 결합을 나타낸다.첫 번째와 두 번째 예는 변수가 술어 위치에 나타날 수 있다는 것을 보여준다.술어는 심지어 다음과 같은 복잡한 용어일 수도 있다.closure(P)또는maplist(F)아래 세 번째 예는 변수가 원자 공식 대신 나타날 수 있다는 것을 보여주는 반면, 네 번째 예는 함수 기호 대신 변수를 사용하는 것을 보여준다.첫 번째 예는 임의의 이항 술어에 적용할 수 있는 일반적인 전이성 폐쇄 연산자를 정의한다.두 번째 예는 비슷하다.임의 이진 술어에 적용되는 LISP 유사 매핑 연산자를 정의한다.세 번째 예는 Prolog meta-predicate를 보여준다.call/1HiLog는 매우 논리적인 특징을 사용하지 않고 자연스러운 방식으로 표현될 수 있다.마지막 예는 1차 항으로 표현되는 임의의 이진 트리를 가로지르는 술어를 정의한다.
폐점(P)(X,Y) <- P(X,Y). 폐점(P)(X,Y) <- P(X,Z), 폐점(P)(Z,Y). 지도 목록(F)([],[]). 지도 목록(F)([X R],[Y Z]) <- F(X,Y), 지도 목록(F)(R,Z). 부르다(X) <- X. 횡단을 하다(X(L,R)) <- 횡단을 하다(L), 횡단을 하다(R). 참조
- ^ a b c Chen, Weidong; Kifer, Michael; Warren, David S. (February 1993). "HiLog: A foundation for higher-order logic programming". Journal of Logic Programming. 15 (3): 187–230. doi:10.1016/0743-1066(93)90039-J.CiteSeerx: 10.1.1.52.7860
- ^ Chen, Weidong; Kifer, Michael; Warren, David S. (1989). "HiLog: a first order semantics for higher-order logic programming constructs". Proc. North American Logic Programming Conference.
- ^ 첸 웨이둥;Kifer, 마이클(1995년)."해결했지 HiLog:higher-order 논리 데이터 언어로 종류".고틀 로프, 게오르크;Vardi, 모셰 Y(eds.)에서.데이터베이스 theory—ICDT 95:5일 국제 회의, 프라하, 체코, 1월 11–13, 1995년:절차.컴퓨터 과학에서Lecture 지폐를 상상한다.Vol893년.베를린, 뉴욕:Springer-Verlag.를 대신하여 서명함. 252–265. doi:10.1007/3-540-58907-4_20.아이 에스비엔 9780387589077.OCLC 31740400.CiteSeerx:10.1.1.56.4332
- ^ Kifer, 마이클(2008년)."메이저 리그 룰 교환 형식:프레임워크".Calvanese, 디에고, Lausen, 게오르크(eds.)에서.웹 추론과 통치 시스템:두번째 국제 회의, RR2008년 카를스루에, 독일, 10월 31–November 1,2008년:절차.컴퓨터 과학에서Lecture 지폐를 상상한다.Vol5341.베를린, 뉴욕:Springer-Verlag.를 대신하여 서명함. 1–11. doi:10.1007/978-3-540-88737-9_1.아이 에스비엔 9783540887362.OCLC 262884460.CiteSeerx:10.1.1.150.6922
추가 읽기
- Ross, Kenneth A. (January 1994). "On negation in HiLog". Journal of Logic Programming. 18 (1): 27–53. doi:10.1016/0743-1066(94)90040-X. CiteSeerx: 10.1.1.55.2148
- Bruijn, Jos; Heymans, Stijn (January 2008). "On the relationship between description logic-based and F-logic-based ontologies". Fundamenta Informaticae. 82 (3): 213–236. CiteSeerx: 10.1.1.602.2421