Logic Programming Using Parallel Associa11ve Operations

Logic Programming Using Parallel Associa11ve Operations

LOGIC PROGRAMMING USING PARALLEL ASSOCIA11VE OPERATIONS s. Ta,lor, A. Low 1'1 , G. Q. MaculN Jr., S. J. Stolfo Department. or Computer Selence, Columbta Unlverslty, NY 1002 7 LOGIC PROGRAMMING USING PARALLEL ASSOCIATIVE OPERATIONS S. Taylor, A. Lowry, G. Q. Maguire Jr., S. J. Stolro Department or Computer Science, Columbia University, NY 10026 Abstract In ord"r to provide p"rformance Improvement;: In the subgoals that must be examtned In order to s.ltl5fy the executIOn of iarg" logiC programs, It IS highly deSirable head goal For pedagogical reasons, In thiS pa~,er W~ to lnVl?5tlgate the relatlonsh!ps between logiC, data-base Will refer to the syntactic structure .lnd termtnologv of SF!pm~ and knowledge-ba.s"d systems In the context of Prolog when dl5CU:;5tng logiC programming formalisms massit'Eiy parall£l architectures ThiS paper pres"nts Thus the follOWing clause a mod~1 for the Intf'rpretatlOn of logiC programs In thiS typ~ of ":lVlronm~nt and overnews the llgonthms 10gICl.ln(X) - human(X), teaches(X logic) under doev"iopm~nt may be rl'ad declaratively a.s .\n Int::'rpr<:tpr tn.lt lmrl~ments the model has been demon~tratpd In simulations on a number of small [or el'cry X, X is a logician U X is human programs Impl"mentatlon requires that only a :,mall an,L X teaches logic ~et of hlrd',nre pnmltlves be avatlable, these h.lve or proced urally as bf>en succP~flJlly Implement"d on l workIng prototype machlu<-. DADO to solve the goal of finding if X is a logician. soll'e the goal of finding if X is a Curren! research alms to develop the model Into .l h"man alld soll'e the goal of finding If .\" pral ftc.11 and "fflfl<:'nt logiC programming system for teaches logic use on thr:- m.lchJni> Ex"clJtlOn of 3. leglc program comrn:;tng 1 ~et of Horn d.i'JSe.- Inrolves the ~.roof of a USH dircctil'e u;:tng the 1. Oackground and Introduction o.l.ll'SeS In the program The r",sults o[ th" eXI'cutlon .lr" thl? r-05::t,le binding ;:et5 [or \'aTlables o(curnng In L()glc t,r()6Ccimmlng IS a programmIng m"tho';ology the dlrlO'Cln-" ".:.~h of which Is 'OXI:t"ntl3.lI:; qU.lntdled b.l.;ed on -vmt-oltc !oglc Involving the use of Hurn ror f.,dOlr<: If th", proof ~annot be con:;tr'j(!'·d :-ilnce dJljS"S Th~"p .lrf' univers.llly qU.lntlfl!:d flr::t order 'h" m':'.I£)Ing of .l program 15 """"ntlally d"c1arall\'" In aXiom,; cont"Jnlng .It le~t one POSitive Itt"r.ll. J. ::.1lur" rilff"r"nl control str::lt"gIPs cJ.n be u.:''''J to r"stfllt .. d ["rm of the gener.ll cbuse encountered In • on:MIl t rh" r,rcof Prolog [20. 261 "!11pluv' .:. <,m,!" .!~ph-[Ir:t :\SD/OR tr~", first order predlc~te ulculus As a consequ"n(~ d "'lrch of the ,i",fLnAo tv th"lr form.ll m.lth"m.ltlC'al semJntlcs. Horn rlallo"S _:.l~:"'; In th'" ,';(.,§;n!11 _-\ numbp, oi o!h"r le;,,_ prondp an explICit declarative interpretation In !·.is",d L)n;'~.lge Im~.lpmpntltl(ln"!t6 tell h.l';p f'ro'.'\.I:·i addition. Kowal.,kl [11] h.l.S ,l.Oslgned th~m .l ~,ro("d'!fll br"'ldth-flr~t ""'Jrch .lnd more ~ophlstl~ll"d '_',ntrol sem.lntlcs that ~'ro\'ldes .l b.l.>IS for their use In :'tructur"'s In .In .lttempt to Improve fle:\lblltty .lnd programming and ~ff,:,ctl\' .. ly d .. flnes hOllJ a pr0gr.lm IS .. ffICl"nn- on \-on \'pum.lnn TTIaChln"s [t 271 to be '!xecuted Th", loglc- bl:;pd languagl?s [I 19261 Th" cios" relat\on"hlp b~tw",'On logiC .1n,1 1.1' .'-~J.$'" th.lt hay'! be'!n developed .l.S .l result .lre bl:;ed on '_hls ,"5t'!m; [7 181 prOVides an ",xc"lIent th",orl?tl~,ll r..l.;I:l r·rocedur.ll Intert'f':1 allon of lIorn claus'!s l'nder thiS for ~h'" dHelopmf'nt of both dat.,-b<l.':f! ~v""'ms 1nct interpretation terms In the body of a clause constitute k!1owl",Jg",-t.~ed s),otem;; LogiC ~,rogr 1 m mlng l.lnguages ~'rovld'! a natural [flmework hr th~ ThiS r .. ,ean h IS 5upI!orted cooperatlv~ly by InternatIonal BUSiness \tachtn~s CorporatIOn Digital ImplementatIOn of th'?5e sy~t"ms sine" th",y prol'ld~ EqUipment Corporation.' Intel Corporation, ValId LogiC both the b~IC Inference meeh.lnlsm requlr':d ]nu .l S~'5tems Inc and Defense Advanced Rpsearch Projects Ag"ncy und"r contract :-';00039-82-C-0427 uniform representation [or factual and p,oc.oduol 58 CH2007-3/84/0000/00S8 SOI.OO c 1984 IEEE knowledge KUnlfuJI and Yokot:l [12] bve ihown tbt Communtratlon IS always Inttlatt'd by the control Prolog. augm"nted with the set-of meta-predicate. IS a proct'ssor through a small number of primitil'e relatIOn ally complete query language and have outlined hardu'are instructions The synchrontzatlon of th", methods to Inted ace data-base operations and problem ,,)'st~m IS assumed to be mherent 10 the operation of :olnng systems \\'Ithln a Prolog environment The tht's", pnnlltlve Instructions, and they must be .ue hltect ural modd of this and other systpms [10j ~rrlcl('ntl)' Impl('mented In ordt'r to describe th~ IOvoln separate r~asonlOg ar.cl r;elatlonal searchlOg 'em antics of the Instructions, three registers are of ':n'l.lOes tntere~t Th", model de:,~nbed :n thiS pa?H uses a nngle CPR thp control proce::sor register used for Infpr",nc" "nglne for logiC progr:l.mmlng ,n J. m~';:lvely communtcatlon 1',lfJ.llr,1 "nVlronment It may be Implemented uSing PER the processmg ",lem",nl communtcatlon register a.ssociatin opcmtions ~Imtlar to thos;: dlscu""ed 10 the E:,\ the pnable- flag reSident at each PE when true, 1:!pr:.t'Jrp on data-base machines and l.:.oOClatlvlC tht' PE may partiCipate In communication With ~'roc~~~ors [23] The model m.lkes uSP of parallelism lh", C'P Inhr'jPnt 10 logiC' programs and as such. dops not r"'!Ulr" r hp U~" of lddltlon:!l non-logiC 31 lnn0tatlons Th .. n"C P 5:J.ry and 5uffiCIent s<:,t of pnmltlve hardware .\ n um bpr of o~'roort IJllltlr::: eXist for r'J.rallpl ;executIOn In,:t rultlons reqUired to 1m plement t he model are of logiC ['rogram~ [j 1 j] The for~ dp::cnb;ed In thiS d;.ftne-d a.;: follows r.11'''r I:: dn e-x:"n'::lon of the macl .. 1 tprm"d Sfarch par<llldism [j] E:'\:\I3LE Set E:\, to true, In "very PE BROADCAST If E:\, IS true th"n copy CPR to PER, In every PE 2. The Model REPORT If E:'-i 15 true then copy PER to CPR ~sumtng only one PE IS The mod .. 1 presented may be Y1ewed conceptually as E'nabled ~h", configuratIOn shown In figure 1, making no :-'II:,\-HESOL \ 'E Copy mln(PER) to CPR, (mtn(PERj (Omnlltnl"nt to a pJ.rtl(ulli connection tOtlology :\ IS the mlOimum value held In a PER :,up"r\·I;orv. rontrol processor (CP) commUnicates With register 10 any enlbled PEl l \.ug'1 nllmb"r (on the order of many thousands) of prorusing d(m",/s (PE's) 10 a tightly coupled By brolldC'asting an appropriate code these "n \I~'_\nmpnt I hlt IS single instruction, multiple data assoCiatively based Ir. ~uctlons can be used to Invoke stream tSI:-'ID, [6l 10 style but differs 10 that It allows loc J.I .our-routtnes at each PE Local subroutines re-mote ~'r',((Jure Invocation There IS no g!obal perform various functIOns which Include mt'mory m~mor\' "lth PE has Its own local memory lnd the m.lnag"'mf'nl untllcatlon and mantpulatlon of variable PE conflgura:lon mly be ~soclatlvely addressed bindings Their execution may effect the contents of Slnc-? th .. PE ~ arc. a,o:umed to be relatively Simple 10 the thr"" communtcatlon rpglSters n.ltlH" the oy::t"'m may effectively be viewed as an The algOrithms df'scrlbed In the follOWing s",ctlons may Inle-Iltg",nt m<,mory where processing and storage are be Impl"m"nted uSing only thiS small SF:t of "Xl':nolvt'I\' In!ermmgled lOS! ruet Ions The tnstructlons han' been demonstrated o o on an eXlsttng architecture suggesting that a practical 0 o o Implementation IS realizable 0 o o o o 0 CP 2.1 The Distribution or Inrormatlon 0 Rule Bodies and o In order to reduce both the time spent In 0 Top Level AlgOrithm o commUOIcallon and the speed of various matching 0 algOrithms, the Inlormatlon stored locally at each PE PE's 0 o o o IS kept In a tokentzed form Tokens are typed Rule Heads L'nlt Clauses o pOinters Into a symbol table kept at the control and Loral Subroutmes 0 flrocessor, the sole area 10 the system that the print form of the program IS maintained [8] Flgurt' 1 The performance of many sequential algOrithms can be enhanced by uSing the associatively based mechanisms S9 prevIOusly desCrIbed [91. In general. however. If a On com pletlon of Unlfication, PE 5 Will contain a slgnIftcant a.mount of information is to be accessed, a 'Imple binding set (Ie., [ X/I ]) while PE 2 Will good hashing or table lookup techOlque is likely to be ontain a complex binding set (I e, [Yjl-->body(2)]) J.S effective due to the commUOlcatlOn costs Involved.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    12 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us