rimon/ugtomita.pdf · 2005-10-06 · 1 2 . lomed . gra > gcl GCL (GNU Common Lisp) 2.6.6 CLtL1 Jan...
Transcript of rimon/ugtomita.pdf · 2005-10-06 · 1 2 . lomed . gra > gcl GCL (GNU Common Lisp) 2.6.6 CLtL1 Jan...
1 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
בתוכנת:האחדה�פסאודו למשתמש Tomitaמדרי�
וחישובית(pseudo-unification)האחדה�פסאודו תיאורטית מסגרת בחבילת,היא הממומשת
משפטי� וניתוח דקדוקי� להגדרת Generalized")תוכנה LR Parser/Compiler"),מאת
M. Tomitaמאוניברסיטת Carnegieואחרי� Mellon,ב"ארה.
בתוכנה.1 שימוש הוראות
בעזרת דקדוק להכי� קוב�.כלשהוeditorיש הוא הדקדוק הכולל,רגילasciiקוב�
בפרק המתואר במבנה דקדוק הקוב�.בהמש�2חוקי name>.gra>:ש�
.א
> gcl לסביבת GNUלמשל,LISPנכנסי� Common Lisp: .ב
עשוי העבודה לשיריבמהל� להזדקק הדקדוקeditorותי� בקוב� .לשינויי�
ב להשתמש בכלי,LISPשל�editorאפשר ולהשתמש נפרד חלו� לפתוח UNIXאו
.כבחירתכ�
בסביבת תחבירי,LISPכשנמצאי� לניתוח התוכנה חבילת את לטעו� :יש .ג
> (load “/cs/course/current/nlp/tomita/v8-4-sb.lisp”)
> (compgra "<name>") הרצוי"קומפילציה"מבצעי� :>name>.gra,לדקדוק .ד
> (compgra "lomed") :למשל
קבצי במספר נשמרת לעבודה.עזר�התוצאה ומוכ� נטע� המעובד .הדקדוק
> (compgra "<name>" :result-to-file nil) :ההוראה
הדיסקת על העזר קבצי שמירת .מנע
להשתמ ברצונכ� קומפילציהא� קוד� עבר שכבר בדקדוק שינוי ללא אותו,ש טענו :רק
> (loadgra "<name>")
> (p "dani lomed") p)ההוראה משפט("..." לניתוח ):parse(משמשת .ה
> (disp-tree)הניתוחי�המבנימוצגי� של .תכוניות
הגזירה ע� :לקבלת
> (p* '("....." ".....")) אחתאפשר בהוראה משפטי מספר :לנתח .ו
> (quit) העבודה סיו מ,ע :LISPסביבתיוצאי .ז
2 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
הדקדוק.2 מבנה
מהצורה הוא דקדוק :חוק
(context-free phrase structure rule
(list of equations) )
המבני phrase(החלק structure rule(רכיב של ש� ביניי�(כולל שמאלבצ)סמל מפרידח�,ד
רכיבי�,<==>או<-->מסוג של סוגריי� בתו� רשימה ימי� לקסיקליות,ובצד חלקי(קטגוריותמשולשי�.אלפנומריי��תוויאו)דיבר סוגריי� בתו� מופיעי� וקטגוריות רכיבי� .שמות
התכוניות למבני מתייחסות הד")הפונקציונלירהתיאו("המשוואות החוק רכיבי .קדוקישל
החוקx0המשתנה של שמאל בצד הרכיב של התכוניות מבנה מבניx1,..xnוהמשתני�,הוא ה�החוק של הימני בחלקו הרכיבי� של לימי�"עפ,התכוניות משמאל הופעת� סדר .י
משתנה של ש� בתור מסלול ת,)..,x0,x1(נגדיר מחרוזות לשרשר אפשר לציו�ושאליו כלשה� וי�
מפור יותרשמות כרצוננו)צמתי�(טי� היררכי תכוניות x1:למשל;במבנה agr num.
שמאל צד לה ויש רגילי� בסוגריי� נתונה משוואה מסלול,כל תאור להיות,שהוא שיכול ימי� וצד
מסלול הוא הוא,�תווימחרוזת,ג� הראשו� שאברה רשימה ואחריו*EOR*או*OR*אות מחרוזות של כלשהו בסוגריי�.�ויומספר לשי� יש אטומי שאינו :ביטוי
(x0 = x1)
((x0 subj) = x1)
((x0 root) = talmid)
((x1 case) = (*OR* nom acc))
של� לחוק :דוגמה(<NP> <--> (<DET> <N>)
( ((x2 def) = -)
((x0 def) = (x1 def))
((x0 root) = (x2 root))
((x0 agr number) = (x2 agr number)) ) )
יותר מורכב לחוק :דוגמה(<S> <--> (<NP> <VP>)
( ((x1 case) = nom)
((x2 form) =c finite)
(*OR*
(((x2 tense) = present)
((x1 agr) = (x2 agr)))
(((x2 tense) = past) ) )
(x0 = x2)
((x0 subj) = x1)
((x0 passive) = -) ) )
האחדה במונחי הוא אילוצי� במשוואת השוויו� קומפטיביליות:סימ� סתירה(בדיקת של)חוסרהאחדת� של תכוניות מבנה ויצירת הצדדי� ער�,בפרט.שני עדיי� אי� המשתני� לאחד אזי,א�
להשמה זהה ההאחדה ותוצאת ריק באופ� מתקיימת .קומפטיביליות
טהורה האחדה אל,לעומת הפעולה לאחר יצביעו המשוואה צדי בשני המסלולי� אותושבההמשתני��בפסאודו,ער� לשני בתוכנ� הזהי� הערכי� יוכנסו .השוני�האחדה
3 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
פסאודו של מתכונת בי� בחירה מאפשרת טהורה�התוכנה האחדה של מתכונת לבי� .האחדה
פסאודו• של במתכונת ערכי�,האחדה�בעבודה שיתו� ,co-reference(אי� re-entrancy(ג�בפועל ערכי� זהות :מכא�.כשיש
יותר� כללי כגר� ולא כע� מיוצג תכוניות )DAG(מבנההפעולות� לסדר חשיבות יש בה� מצבי� ייתכנו
ה• זההאמצעי� פרק בהמש� שיתוארו מגבילה,שלילה,דיסיונקציה(מיוחדי� ,משוואה
ערכי� קיו�,דריסת בפונקציותבדיקת בשפת�ושימוש בעבודה)LISPעזר רק זמיני�טהורה בהאחדה זמיני� ואינ� האחדה פסאודו של .במתכונת
בפסאודו מקנה�השימוש חישוביתהאחדה ויעילות יותר חזק ביטוי בפשטותבמחיר,כוח פגיעהשל וסיכו� מסוימי�הפורמליז� במקרי� קונסיסטנטיות .איבוד
פסאודודוגמה לבי� טהורה האחדה בי� בהתנהגות סדר�האחדה�להבדל של אפשרית :השפעה
.א(<S> <--> (<NP> <VP>)
( ((x0 subj) = x1)
((x2 voice) = active)
(x0 = x2) ) )
.ב(<S> <--> (<NP> <VP>)
( ((x0 subj) = x1)
(x0 = x2)
((x2 voice) = active) ) )
לרכיב ער�VPא� הפעולהvoiceאי ל,לפני שיווצר התכוניות בSמבנה שונה'במקרה יהיהאמזה טהורה',של בהאחדה זהה ביצוע .לעומת
ופסאודודוגמה טהורה האחדה בי להבדל :האחדה�נוספת
(<Start> <--> (<S>)
( (x0 = x1)
((x0 agr gender) = f)
((x0 subj agr gender) = m) ))
(<S> <--> (<N> <V>)
( (x0 = x2)
((x0 subj) = x1)
((x0 agr) = (x1 agr)) ))
ש עצ�Nנניח ש� של מילוני ער� ע,הוא מצוי� תכונית"שמספרו x0)י agr number),לא א�
מינו x0)מצוי� agr gender).ש ג� דומהVנניח מילוני אפיו� בעל פועל .הואהחוק טהורה <S>)בהאחדה <--> (<N> <V>)החוק,צליחי <Start>)א� <--> (<S>)
ש,כשליי x0משו� agrו�x0 subj agrער� אותו על עתה ואי)co-referenceי"ע(מצביעי�תת לקבוע מי��אפשר לתכונית שונה .(gender)ער�
שוני��בפסאודו עצי� לשני השני בחוק מוגדרת המי� תכונית יצליח,האחדה זה חוק .ולכ�
4 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
לעיל לאמור בדקדוק,פרט החוקי� לסדר חשיבות של:אול�,אי� שמאל הראשו�צד החוק
המיוחס הסמל מהו מגדיר בניתוח�בדקדוק הע� זה"בד.שורש יהיה משפט,Sכ מבנה .לציו�
נרצה בנפרדא� מסוימי� רכיבי� של לניתוח דקדוק באותו לכתוב,)NPלמשל(להשתמש נוחאת ראשו� :כחוק
(<start> <--> (<S>)
((x0 = x1)))
את �הצור��NPבSולהחלי בעת ימי� .בצדהוא שלה� שמאל שצד חוקי� של כלשהו מספר תחילה,<start>מותר מנסה המנתח כאשר
החוק לפי ניתוח נכשללתת א� רק לשני ועובר .הראשו�
הע� לשורש כלשהו תכוניות מבנה לייצר !חובה
ע בדקדוק הערות לשלב התו"נית� ציו� השורה;י .בראש
נוספי� שלאמצעי� במתכונת עובדי כאשר מאפשרת :האחדה�פסאודושהתוכנה
ושלילה :דיסיונקציה
*OR*ו�*NOT*תכוניות ערכי :על
((x1 agr person) = (*OR* 1 2))
ל שקול :זה((x1 agr person) = (*NOT* 3))
ש לב לשי *NOT*)יש מופירוש(3 השונה ער� טווח.�3כל בגלל רק קיימת לעיל השקילותלמסלול המשמעותי המסוי x1הערכי agr person.
*OR*משוואות :על(*OR*
משוואות) (מערכת
( מש וואותמערכת )(. . . . . ) )
מערכת כל תצליח,בתו� כולה שהמערכת בכדי להצליח חיבות המשואות :למשל.כל
(*OR*
(((x2 tense) = present)
((x1 agr) = (x2 agr)))
(((x2 tense) = past) ) )
מהחוק( חלק להיות יכול זה <S>קטע <--> (<NP> <VP>)לאנגליתבדק המבטיח,דוקבלבד הווה בזמ� והנושא הפועל בי� ומספר גו� ).התאמת
*OR*משוואות מערכות כתנאיעל המערכות"או"פועל על מתבצעות.מאחד ההשוואותנכשלו,במקביל כול� א� רק נכשל .והחוק
זה תנאי*EOR*,לעומת סדרתי.אקסקלוסיבי"או"הוא באופ� שמ,מתבצע שוואהברגענוספי� תנאי� בודקי� ואי� מצליחה הדיסיונקציה השמות(מתקיימת מבצעי� אי� ולכ�
נוספות ).והאחדות
במבני המשוואות מוגבל*OR*/*EOR*מספר דימוי.אינו .if-then-elseשלכללימתאפשר
5 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
קיו� *UNDEFINED**DEFINED*:בדיקות
י בצד להופיע יכולי אלה משוואהביטויי של קיו,מי� על דרישה ערכי/לציו� של קיו .אי
:למשל(x2 neg) = *UNDEFINED*
תכונית את זהx2של)שלילה(negבודק בשלב כלשהו ער� לה יש א השמה.ונכשל כל .אי�
wild(וקר'ג card(:תוה%)לבחור שנית� אחר סימ� ).או
אחר תו כל ע שוויו� האחדהומ,מקיי לאחר ערכו את ג.קבל שיישאר במבנה'אסור פתוח וקרהניתוח משתני'הג.בסיו של הקיו עצ על דרישה לציו� שימושי לפועל,וקר משלימי :למשל
(<V> <--> (p a g a s h)
( - - -
- - -
((x0 subj) = %)
((x0 obj) = %) ) )
מוגבלת c=:משוואה
בער�פעהתניית האחדה,ולה עc=האופרטור.השמה/ללא המתוארת שלתכונית י"מציי�הימני כארגומנט המופיע הער� להיות חייב השמאלי לתכונית.הארגומנט הער� אי� לא,א
האחדה השמה,מתבצעת נכשל,כלומר .והחוק
:למשל((x1 case) =c nom)
((x1 case) =c (*OR* nom acc))
השמה ⇐:משוואת
ע המתוארת בתכונית יוצב הימני כארגומנט המופיע השמאלי"הער� הארגומנט את"ידרוס"ו,ישלה הקוד� תמיד.הער� שמצליחה משוואה .זו
ב :�LISPפעולות
ב כלשהו קטע להופיע יכול משוואה של ימי� ח�,�LISPבצד מסוגע� משוואת(==>מפריד).השמה
:לדוגמה(<integer> <--> (<integer> <digit>)
( ((x0 value) <= (+ (x2 value) (* 10 (x1 value)) ) ) ) )
חוקיLISPקטעישילוב של באמצעי לאפיי� שקשה טענות של קומפקטי ביטוי מאפשר בדקדוקאילוצי משוואות או סמנטית,מבנה סטטיסטי,הערכה על.ועוד,שקלול להקפיד יש אול
מב בשימוש ומינימליסטי .בדקדוק�LISPוקר
6 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
קצה תו):terminals(סימני ה� הדקדוק של הקצה מלי�וסימני ולא מילונית,י� הגדרה �ולכ�דבר לכל רגיל חוק הבאה�שהיא כבדוגמה לרשו� :יש
(<N> <--> (t a l m i d)
(((x0 root) = talmid)
((x0 def) = -)
((x0 agr num) = sg) ))
ת ברמת פועל המנתח עצמווג� בטקסט מרווחי� ומתעל� ברווחי�(וי� התחשבות לכפות .נית� (שוות הבאות המחרוזות כל רגילה עבודה במתכונת :לכ�
ve ha talmidim.
ve hatalmidim.
vehatalmidim.
veha tal midim.
ע מיוצג ריק תכוניות הסמל"מבנה .nilי
ב שימוש .בהמש�4פרק'ר�מקרוסאפשרות
7 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
ביניי�.3 וקבצי הניתוח פלט
הניתוח :פלט
מבני דומותLFGברוח,נתוני� שני :ותיאוריות
גזירה• לרכיבי�,)c-structure(ע� ע,)constituents(המתייחס מוגדרי� שה� החלק"כפי י
החוקי� של המשתמש).'וכו,NP,Sכגו�(המבני של בקשה בעקבות רק מוצג הגזירה .ע�
הפונקציונלי• תכוניות במשוואות,)f-structure(מבנה המוגדרי� למסלולי� המתייחסתכוניות על השימוש.ומצביעי� ואופ� התכוניות של המוב� לגבי חופש מאפשר הפורמליז�
בד,בה� תפקידי�כ"א� בעזרת� נושא,תמטיי� תחביריי�)functions(נייצג ,נשוא/כגו�
המבני"וכיו,יחסות הגזירה בע� ביטוי לה� שאי� המשפט.ב ראש של התכוניות )S(מבנהמקרה בכל .מוצג
ביניי� קבצי
המבני:>name>.tabהקוב�.1 לחלק הדקדוק)CFG(מתייחס בתהלי�.של נוצר
שלהקומפילצ בעתיד>name>.graיה �נוס לשימוש הדיסק על שלושה.ונשמר מכיל
פקודת,חלקי� היא מה� אחד פנימי,LISPשלsetqשכל משתנה :המגדירה
*gg*הדקדוק של המבנה הפנימיי�,חוקי .ושמותיה�
*a-tab*השמאלי טבלת)actions/פעולות(החלק המתאימהshift-reduceשל
בטכניקת(קלדקדו משתמשת Generalizedהתוכנה LRהמבנילחלקהדקדוק חסריה�של .)הקשרהחוקי�
*g-tab*הימני טבלת)goto/מעברי�(החלק .shift-reduceשל
שלLISPפונקציות:>name>.funהקוב�.2 הקומפילציה בתהלי� >name>.graהנוצרות
הקלט משפטי לניתוח בעתידג.וישמשו נוס� לשימוש הדיסק על נשמר זה קוב� �.התכוניות מבנה את מחשבת והיא הדקדוק מחוקי לאחד מתאימה פונקציה .כל
:לדוגמה
.....
(DEFUN LOMEDF-7 (X1 X2)
(LET ((X (LIST (LIST (LIST (QUOTE X2) X2) (LIST (QUOTE X1) X1)))))
(AND (AND (P=A (X1 CASE) NOM) (P=P (X1 NUM) (X2 NUM))
(P=P (X0 SUBJ) (X1)) (P=P (X0) (X2))) (OR (GETVALUE* X (QUOTE (X0))) T))))
.....בחוק התכוניות מבנה מחישוב :מתקבל
(<S> <--> (<NP> <VP>)
(((x1 case) = nom)
((x1 num) = (x2 num))
((x0 subj) = x1)
(x0 = x2)))
הדקדוק:>name>.loadfunוב הק.3 של טעינה בכל מחדש הנוצר פנימי את,קוב� ומכיל
הניתוח מהדקדוק)LISPבשפת(תוכנת לעבודה,שנבנתה מוכ� .במצב
8 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
נוספי�.4 עזר אמצעי
גלובליי� פרמטרי�
מסוימת בריצה המנתח התנהגות על .משפיעי�
ע מחדל ברירות לשנות פקודת"נית� LISP:(setqלשsetqי variable value)
1.*max-ambiguity-display*
רב של במקרה שיוצגו ניתוחי� של המירבי .(ambiguity)משמעות�המספרהמחדל .3:ברירת
2.*ignore-space*
t=ת בסיס על ולנתחו במשפט מרווחי� להתעל� לעברית(וי�ויש לגרו�,נוח עשוי א�
מדומ�רב pogesh:למשל;המשמעות et = pogeshet.(
nil=מילה ברמת ).לאנגלית,למשל,מתאי�(עבודההמילוני ההגדרה אופ� על משפיע אינו זה רווחי�,פרמטר מחויבי� .ש�
המחדל .t:ברירת
3.*recover-from-failure*
t=בניתוח מכשלו� להחל� ינסה .המנתח
nil=כשלו בעת יופסק מתאי�,�הניתוח פלט הניפוי(ויופק לשלב ).נוח
המחדל .t:ברירת
4.*wild-card-character*המציי� קלט,"וקר'ג"התו כל ע� שוויו� .ומקיי�
המחדל %.ברירת :
5.*unification-mode*
pseudo=המערכת של הטבעית במתכונת פסאודו,עבודה .האחדה�בשיטת
full=הא במתכונת טהורהעבודה ההאחדה.חדה בתהלי� להבדלי� �אי�fullבמצב,בנוס
הייחודיות בפונקציות ערכי�(תמיכה של ומחיקה קיו�,דריסה ,c=התניית,בדיקות
*NOT*,"ל,"וקר'ג ).�LISPוקריאה
המחדל .pseudo:ברירת
ניפוי )debugging(אמצעי
•dmode
הפלט בתצוגת משפט.שולט ניתוח לפני לקבעו נוס�,יש שינוי עד בתוק� נשאר .והוא
(dmode המחדל(0 הניתוח–ברירת תהלי� לגבי בסיסי .פלט
(dmode על(1 שהופעלו והחוקי� הקלט קטעי יוצגו בה��בפלט השימוש סדר .פי
(dmode שנוס"כנ(2 חוקי� של הצגה בתוספת הניתוחל במהל� ונכשלו .ו
קומפילציה לאחר הדקדוק בקוב� חוקי� ומספרי פונקציות שמות ג� .מוצגי�
9 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
•trace
לפונקציות קריאות על מעקב קומפילציהLISPמאפשר שעבר הדקדוק את המרכיבות
בקוב�( שהוע,)>name>.funונמצאות הערכי� הצגת והוחזרוכולל .ברו
trace):דוגמה lomedf-7)
•disp-node-value
ל disp-node-value)�קריאה n)הרכיב ש� את בצומת)קטגוריה(תציג ערכי,nהנמצאבניו ושמות .תכוניותיו
•disp-nodes
הצמת כל בניה�רשימת ע� .י�
•disp-def
חוק של מקורית בהגדרה במצב,עיו� תצוגתו dmode)לפי 2).
disp-def):דוגמה "lomedf" 52)
•disp-tree
ל הגזירה(disp-tree)�קריאה ע� את תציג משפט ניתוח רקברי(לאחר להציג היא המחדל רתהתכוניות מבנה שלה�).את פנימי ספרור יופיע הרכיבי� שמות .בצד
ל disp-tree)�קריאה n)תת את רק הצומת�תציג שתחת .nהע�
disp-treeאחד ע� רק רב.מציג של הנוספי��במקרי� העצי� את לקבל אפשר משמעות
disp-tree)י"ע n),באשרnנבחר במצבהרצוי הפלט dmode)מתצוגת מהתשובה(2 או
.(disp-nodes)�ל
10 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
מקרוס
חוזרות תבניות של מקוצר לכתיב נוח מילוניות.אמצעי להגדרות במיוחד :שימושי
דוגמת,למשל חוקי� על דומי� רבי� תואר שמות עבור לחזור :במקו�
(<ADJ> <--> (g a d o l)
(((x0 root) = gadol)
((x0 agr gen) = m)
((x0 agr num) = sg)))
מקרו להגדיר שפת(אפשר Commonבמונחי LISP:(
(defmacro %ADJ (wordlist &key (gen 'm)(num 'sg))
(if (atom wordlist) (setq wordlist (list wordlist)))
(append-dolist (word wordlist)
'((<ADJ> <--> ,(explode-string word)
(((x0 root) = ,word)
((x0 agr gen) = ,gen)
((x0 agr num) = ,num)) )) ) )
לכתוב :ואז(%ADJ (
"gadol"
"shamen"
... ))
(%ADJ (
"gdola"
"yafa"
... ) :gen f)
(%ADJ (
"gdolim"
"shmenim"
... ) :num pl)
.'וכו
11 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
פשוטה gra.lomedהדקדוק:דוגמה
(<S> <--> (<NP> <VP>)
(((x1 case) = nom)
((x1 num) = (x2 num))
(x0 = x2)
((x0 subj) = x1) ))
(<NP> <--> (<DET> <N>)
(((x2 def) = -)
((x0 def) = (x1 def))
((x0 root) = (x2 root))
((x0 num) = (x2 num))))
(<NP> <--> (<N>)
((x0 = x1)))
(<VP> <--> (<V>)
((x0 = x1)))
(<N> <--> (t a l m i d)
(((x0 root) = talmid)
((x0 def) = -)
((x0 num) = sg)))
(<N> <--> (t a l m i d i m)
(((x0 root) = talmid)
((x0 def) = -)
((x0 num) = pl)))
(<N> <--> (d a n i)
(((x0 root) = dani)
((x0 def) = +)
((x0 num) = sg)))
(<V> <--> (l o m e d)
(((x0 root) = lamad)
((x0 num) = sg)
((x0 tense) = present)))
(<V> <--> (l o m d i m)
(((x0 root) = lamad)
((x0 num) = pl)
((x0 tense) = present)))
(<DET> <--> (h a -)
(((x0 root) = ha)
((x0 def) = +)))
כמו משפטי� :יקבל
לומד)1( תלמידלומדי�)2( תלמידי�לומד)3( התלמידלומד)4( דני
כמו משפטי� :וידחה
)5* לומדי�) תלמיד)6* לומד) הדני
12 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
ע� ריצה gra.lomedתדפיס
> gcl
GCL (GNU Common Lisp) 2.6.6 CLtL1 Jan 18 2005 00:13:38
Source License: LGPL(gcl,gmp), GPL(unexec,bfd)
Binary License: GPL due to GPL'ed components: (READLINE BFD UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter
Use (help) to get some basic information on how to use GCL.
> (load "/cs/course/current/nlp/tomita/v8-4-sb.lisp")
Loading /cs/course/current/nlp/tomita/v8-4-sb.lisp
"******************************************************"
"** The Generalized LR Parser/Compiler **"
"** Symbolics version 8-4 **"
"** Center for Machine Translation **"
"** Carnegie Mellon University **"
"** (c) 1986,1987,1988 All rights reserved **"
"******************************************************"
"initializing....."
Warning: HASH-TABLE-SIZE is being redefined.
Warning: HELP is being redefined.
"Type (ACKNOWLEDGE) for acknowledgements."
Finished loading v8-4-sb.lisp
T
> (compgra "lomed")
- Reading lomed.gra
- lomed.gra read
************************************************
***** Start compiling lomed.gra
- Reading lomed.gra
- lomed.gra read
*** Grammar Pre-processor started
*** Grammar Pre-processor done
*** LFG Compiler started
*** LFG Compiler done
*** LR Table Compiler started
- converting grammar
- there were 10 rules
- there were 10 really different rules
- there were 17 symbols
- there were 11 terminal symbols אותיות- there were 6 non terminal symbols קטגוריות/רכיבי�- making augmented grammar
- making all items
- 50 items made
- collecting all items
LR [ 0]
LR [ 1]
LR [ 2]
LR [ 3]
LR [ 4]
LR [ 5]
LR [ 6]
LR [ 7]
LR [ 8]
LR [ 9]
LR [ 10]
LR [ 11]
LR [ 12]
LR [ 13]
LR [ 14]
LR [ 15]
LR [ 16]
LR [ 17]
LR [ 18]
LR [ 19]
LR [ 20]
- the number of states is 31
- generating parsing table
LR'[ 0]
LR'[ 20]
- reforming goto table
13 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
*** LR Table Compiler done
- Writing File lomed.tab
- File lomed.tab written העבודה קבצי אלה- Writing File lomed.fun בדיסק הנשמרי�- File lomed.fun written העיבוד בסיו� ג�- Writing File lomed.funload
- File lomed.funload written
***** Setting up the runtime parser
;;; Loading source file "lomed.tab"
;;; Warning: File "lomed.tab" does not begin with IN-PACKAGE. Loading into package
"USER"
;;; Loading source file "lomed.fun"
;;; Warning: File "lomed.fun" does not begin with IN-PACKAGE. Loading into package
"USER"
Parser Ready for lomed
NIL
> (p "talmid lomed")
>talmid lomed
1 (1) ambiguity found and took 0.4 seconds of real time
;**** ambiguity 1 *** ניתוחי�:קרי דווקא,מספר !משמעות�רבלאו
((SUBJ ((NUM SG) (CASE NOM)
(DEF -)
(ROOT TALMID)))
(TENSE PRESENT)
(NUM SG)
(ROOT LAMAD))
> (disp-tree)
<S>(15) --> <NP>(7) <VP>(14)
<NP>(7) --> <N>(6)
<N>(6) --> T A L M I D
<VP>(14) --> <V>(13)
<V>(13) --> L O M E D
> (p "ha-talmid lomed")
>ha-talmid lomed
1 (1) ambiguity found and took 0.7 seconds of real time
;**** ambiguity 1 ***
((SUBJ ((NUM SG) (CASE NOM)
(ROOT TALMID)
(DEF +)))
(TENSE PRESENT)
(NUM SG)
(ROOT LAMAD))
> (disp-tree)
<S>(19) --> <NP>(11) <VP>(18)
<NP>(11) --> <DET>(3) <N>(10)
<DET>(3) --> H A -
<N>(10) --> T A L M I D
<VP>(18) --> <V>(17)
<V>(17) --> L O M E D
14 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
> (p "dani lomed")
>dani lomed
1 (1) ambiguity found and took 0.1 seconds of real time
;**** ambiguity 1 ***
((SUBJ ((NUM SG) (CASE NOM)
(DEF +)
(ROOT DANI)))
(TENSE PRESENT)
(NUM SG)
(ROOT LAMAD))
> (disp-tree)
<S>(13) --> <NP>(5) <VP>(12)
<NP>(5) --> <N>(4)
<N>(4) --> D A N I
<VP>(12) --> <V>(11)
<V>(11) --> L O M E D
> (p "ha-dani lomed")
>ha-dani lomed
failed
parsed --> (H A - D A N I)
rest --> (L O M E D $)
> (dmode 2)
2
> (p "ha-dani lomed")
>ha-dani lomed
H
A
-
rule # 10 LOMEDF-55 <DET>(3) --> HA-
D
A
N
I
rule # 7 LOMEDF-52 <N>(8) --> DANI
killed - rule # 2 LOMEDF-47 <NP> --> <DET>(3) <N>(8)
failed
parsed --> (H A - D A N I)
rest --> (L O M E D $)
> (p "ha-talmidim lomed")
>ha-talmidim lomed
H
A
-
rule # 10 LOMEDF-55 <DET>(3) --> HA-
T
A
L
M
I
D
rule # 5 LOMEDF-50 <N>(10) --> TALMID
rule # 2 LOMEDF-47 <NP>(11) --> <DET>(3) <N>(10)
15 ל חישובית“קורסתקציר לבלשנות רימו�.מ”מבוא
I
M
rule # 6 LOMEDF-51 <N>(14) --> TALMIDIM
rule # 2 LOMEDF-47 <NP>(15) --> <DET>(3) <N>(14)
L
O
M
E
D
rule # 8 LOMEDF-53 <V>(21) --> LOMED
rule # 4 LOMEDF-49 <VP>(22) --> <V>(21)
killed - rule # 1 LOMEDF-44 <S> --> <NP>(15) <VP>(22)
failed
parsed --> (H A - T A L M I D I M L O M E D)
rest --> ($)
> (p "ha- talmidim lomdim")
>ha- talmidim lomdim
H
A
-
rule # 10 LOMEDF-55 <DET>(3) --> HA-
T
A
L
M
I
D
rule # 5 LOMEDF-50 <N>(10) --> TALMID
rule # 2 LOMEDF-47 <NP>(11) --> <DET>(3) <N>(10)
I
M
rule # 6 LOMEDF-51 <N>(14) --> TALMIDIM
rule # 2 LOMEDF-47 <NP>(15) --> <DET>(3) <N>(14)
L
O
M
D
I
M
rule # 9 LOMEDF-54 <V>(22) --> LOMDIM
rule # 4 LOMEDF-49 <VP>(23) --> <V>(22)
rule # 1 LOMEDF-44 <S>(24) --> <NP>(15) <VP>(23)
1 (1) ambiguity found and took 0.3 seconds of real time
;**** ambiguity 1 ***
((SUBJ ((NUM PL) (CASE NOM)
(ROOT TALMID)
(DEF +)))
(TENSE PRESENT)
(NUM PL)
(ROOT LAMAD))
> (disp-tree)
<S>(24) --> <NP>(15) <VP>(23)
<NP>(15) --> <DET>(3) <N>(14)
<DET>(3) --> H A -
<N>(14) --> T A L M I D I M
<VP>(23) --> <V>(22)
<V>(22) --> L O M D I M
> (quit)