ההבדל בין ביטוי רגיל לדקדוק ללא הקשר

תוכן עניינים:

Anonim

ה ההבדל העיקרי בין ביטוי רגיל לדקדוק חופשי בהקשר הוא ש ביטויים רגילים עוזרים לתאר את כל המיתרים של שפה רגילה ואילו הדקדוק ללא הקשר עוזר להגדיר את כל המיתרים האפשריים של שפה נטולת הקשר.

הדקדוק מציין כללים תחביריים לשיחה בשפות טבעיות. מדעי המחשב משתמשים במידה רבה בתורת השפות הפורמליות. בשנת 1956 נעם חומסקי נתן מודל מתמטי של דקדוק לכתיבת שפות מחשב. כאשר ניתן להפיק מכל הדקיקים מכל המחרוזות, אומרים כי השפה נוצרת מאותה דקדוק. שני סוגי דקדוק הם דקדוק רגיל ודקדוק ללא הקשר. כל שפה שניתן לתאר באמצעות ביטוי רגיל היא שפה רגילה. דקדוק ללא הקשר הוא הכללה של ביטוי רגיל. אפשר להשתמש בביטויים רגילים לכתיבת שפות רגילות ודקדוק ללא הקשר בכתיבת דקדוק ללא הקשר.

ביטוי רגיל, דקדוק ללא הקשר

מהו ביטוי רגיל

הדקדוק הרגיל יוצר שפות רגילות. לדקדוק זה ישנו מסוף יחיד בצד שמאל וצד ימין המורכב ממסוף יחיד או מסוף יחיד ואחריו לא מסוף יחיד. זה יכול לכלול ייצור כדלקמן.

X -> a או X -> a Y

כאשר X, Y ϵ N (לא מסוף) ו- ϵ T (מסוף)

ביטויים רגילים מסייעים בכתיבת דקדוק רגיל לתיאור שפות רגילות.

ביטוי רגיל מייצג קבוצה מסוימת של מחרוזות באופן אלגברי. כמה כללים חשובים שיש לפעול עליהם בעת כתיבת ביטוי רגיל הם כדלקמן.

  1. סמלי הטרמינל, סמל null וסמל ריק הם ביטויים רגילים.
  2. איחוד שני ביטויים רגילים הוא ביטוי רגיל.
  3. הצירוף של שני ביטויים רגילים הוא ביטוי רגיל.
  4. חזירה או סגירה הם ביטוי רגיל.

הביטוי הרגיל של המערכה {0, 1, 2} הוא כדלקמן.

R = 0 + 1 + 2

ניתן לייצג את הערכה {abb, a, b, bba} על ידי הביטוי הרגיל הבא.

R = abb + a + b + bba

שקול את הסט, {ϵ, 0, 00, 000,…}

ה- ϵ הוא המחרוזת הריקה. הביטוי הרגיל הוא R = 0*. זה מייצג את סגירת הסמל כולל הסמל הריק.

במערך {1, 11, 111, 1111,…..}

הביטוי הרגיל הוא R = 1 +. זה + מציין סגירת סמל למעט הסמל הריק.

מהי דקדוק ללא הקשר

בתיאוריית השפה הפורמלית, Context Free Language (CFL) היא שפה שנוצרת על ידי דקדוק חינם הקשר. ארבעה פרמטרים מגדירים דקדוק חופשי (G).

G = {V, ∑, S, P}

V: קבוצה של סמלים משתנים או לא מסופים.

∑: קבוצה של סמלי מסוף

S: סמל התחלה

P: חוק הייצור

דקדוק חינם הקשר יש את הפורמט הבא של כלל ההפקה.

A -> a כאשר a = {V, ∑}* ו- A ϵ V

דוגמה אחת לדקדוק חופשי בהקשר היא כדלקמן. כל הפקה מורכבת מסמל לא סופני וביטוי רגיל.

עבור יצירת שפה שמייצרת מספר שווה של a ו- b היא בפורמט a ב . הדקדוק ללא הקשר הוא כדלקמן.

G = {(S, A), (a, b), (S -> aAb, A -> aAb | ϵ)}

בהתחשב בסמל ההתחלה,

S -> א A ב

על ידי החלת A -> aAb

→ א א ב ב

על ידי החלת A -> aAb שוב,

→ א א א ב ב ב

על ידי החלת A -> ϵ (סמל זה מציין מחרוזת ריקה)

→ א א ב ב ב

→ א 3 ב 3

כאשר בוחנים את הפלט, מספר ה- a שווה למספר ה- b. יש בו את ה a ב טופס.

הקשר בין ביטוי רגיל לדקדוק ללא הקשר

ההבדל בין ביטוי רגיל לדקדוק ללא הקשר

הַגדָרָה

ביטוי רגיל הוא מושג בתורת השפה הפורמלית המהווה רצף של תווים המגדירים דפוס חיפוש. דקדוק חינם הקשר הוא סוג של דקדוק פורמלי בתורת השפה הפורמלית, המהווה מערכת של כללי ייצור המתארים את כל המיתרים האפשריים בשפה רשמית נתונה.

נוֹהָג

ביטויים רגילים עוזרים לייצג קבוצות מחרוזת מסוימות באופן אלגברי. זה עוזר לייצג שפות רגילות. דקדוק ללא הקשר עוזר להגדיר את כל המיתרים האפשריים של שפה נטולת הקשר.

סיכום

ביטוי רגיל הוא שיטה להתאמת תבניות. זוהי שיטה גמישה לאמצעי גמיש ותמציתי להתאמת מחרוזות טקסט. הוא מגדיר את כל המיתרים בשפה הרגילה. מצד שני, דקדוק ללא הקשר מאפשר הגדרת כל המיתרים השייכים לשפה נטולת הקשר. ההבדל בין ביטוי רגיל לדקדוק חופשי מהקשר הוא שהביטויים הרגילים עוזרים לתאר את כל המיתרים של שפה רגילה ואילו הדקדוק החופשי מהקשר עוזר להגדיר את כל המיתרים האפשריים של שפה חופשית -הקשר.

התייחסות:

1. "ביטויים רגילים". Www.tutorialspoint.com, נקודת הדרכה, 8 בינואר 2018, זמין כאן.2. "מבוא לדקדוק ללא הקשר." Www.tutorialspoint.com, נקודת הדרכה, 8 בינואר 2018, זמין כאן.

באדיבות התמונה:

1. "Toolbaricon RegEx" מאת M0tty-עבודה משלו (CC BY-SA 4.0) באמצעות Commons Wikimedia

ההבדל בין ביטוי רגיל לדקדוק ללא הקשר