มีวิธีอื่นในการอธิบายภาษาที่เป็นทางการนอกเหนือจากไวยากรณ์หรือไม่


22

ฉันกำลังมองหาทฤษฎีทางคณิตศาสตร์ที่เกี่ยวข้องกับการอธิบายภาษาทางการ (ชุดของสตริง) โดยทั่วไปและไม่ใช่แค่ลำดับชั้นของไวยากรณ์


หมายเหตุว่ามีหลายประเภทหลายไวยากรณ์เกินคนชัมคลาสสิกเช่นหลาย , คู่และระยะเวลาขึ้นอยู่กับไวยากรณ์บริบทฟรีตามลำดับ (googlable ง่าย)
— Raphael

คำตอบ:


14

มีความเป็นไปได้มากมาย คนอื่น ๆ ได้พูดถึงออโตมาตะซึ่งมีให้เลือกมากมาย พิจารณากรอบงานต่อไปนี้เช่นกัน:

  1. บางภาษาสามารถกำหนดโดยตรง(ร่วม)คำจำกัดความอุปนัย ตัวอย่างเช่น fixpoint ที่เล็กที่สุดของ เป็นภาษาเดียวกับที่อธิบายโดย , fixpoint ที่ใหญ่ที่สุดคือก) โปรดทราบว่าคำจำกัดความดังกล่าวยังสามารถเขียนในรูปแบบกฎแคลคูลัสหรือการอนุมาน :
    (ba∣a)∗(ba∣a)ωa⇒ ε∈Lw∈L⇒aw∈Law∈L⇒baw∈La
    (ba∣a)∗(ba∣a)ω
    aε,waw,awbawa

  2. คำนิยามโครงสร้างคำที่สามารถใช้เป็นแบบจำลองของสูตรตรรกะได้ หลักทุกคำพูดที่กำหนดโดเมนของตำแหน่งของ , predicatesเพื่อให้สำหรับทุก , เพรดิเคตนั่นคือจากจำกัด ไว้ที่P : D → { 0 , 1 } P ( ฉัน) ⟺ W ฉัน = ∈ Σ < < N D WDw={1,…,n}Pa:D→{0,1}Pa(i)⟺wi=aa∈Σ<<NDwและsuc:Dw×Dw→{0,1}นั่นเป็นจริงถ้าหากพารามิเตอร์ตัวที่สองเป็นตัวตายตัวแทนโดยตรงของกำปั้น
    ดังนั้นสำหรับตัวอย่างเช่นถ้าแล้วw=aababaab
    ในความเป็นจริงนี้ลำดับแรกสูตรกำหนด --- ผ่านชุดของโครงสร้างคำที่ตอบสนองมัน --- ภาษาเดียวกับ(ข|)* ที่สอดคล้องω-language(ข|)ωอธิบายไว้โดยสูตร LTLaSw⊨∀i.∀j. (Pb(i) ∧ suc⁡(i,j))→¬Pb(j);a
    (ba∣a)∗ω(ba∣a)ω
    เทียบหลายภาษาระหว่างคลาสสิกคลาสสิกกับ logics บางอย่าง ยกตัวอย่างเช่นFOสอดคล้องกับดาราฟรีภาษาอ่อนแอMSOภาษาปกติและMSOเพื่อโอห์มภาษา -regular ดูที่นี่สำหรับการอ้างอิงa◻(Pb→◯(¬Pb))a
    ω

  3. บางสิ่งบางอย่างตั้งฉากกับชั้นเรียนคลาสสิกเป็นภาษารูปแบบ สมมติตัวอักษรขั้วและตัวอักษรตัวแปรX = { x 1 , x 2 , ... } สตริงพี∈ ( Σ ∪ X ) +เรียกว่ารูปแบบ ให้H = { σ ∣ σ : X → Σ ∗ }ชุดของการแทนที่ เรากำหนดภาษาของรูปแบบpเป็นΣX={x1,x2,…}p∈(Σ∪X)+H={σ∣σ:X→Σ∗}p
    ทราบว่าσจะขยายไปยังการทำงานในรูปแบบ; สัญลักษณ์เทอร์มินัลจะไม่มีการเปลี่ยนแปลง เป็นตัวอย่างให้พิจารณาL(x1ขขx1)={WขขW|W∈{,ข}*}aL(p)={σ(p)∣σ∈H}.a
    σ
    L(x1abbax1)={wabbaw∣w∈{a,b}∗}
    โปรดทราบว่าเราอนุญาตให้มีการแทนที่เพื่อลบตัวแปร คุณสมบัติบางอย่างของคลาสของรูปแบบภาษามีความแตกต่างกันอย่างมากสำหรับการลบกับการแทนที่ที่ไม่ใช่การลบ ภาษารูปแบบที่มีความสนใจเป็นพิเศษในการเรียนรู้ทองสไตล์


5

คุณควรมีลักษณะที่ทฤษฎีออโต มีเนื้อหามากมายเกี่ยวกับเรื่องนี้

ตัวอย่างเช่นคุณอาจกำหนดภาษาปกติด้วยหุ่นยนต์ จำกัด nondeterministicพร้อมขอบที่มีป้ายกำกับ: สตริงเป็นของภาษาหากหุ่นยนต์สามารถติดตามการเปลี่ยนที่กำกับด้วยอักขระและหยุดอยู่ในสถานะสุดท้าย

นอกจากนี้ไวยากรณ์บริบทฟรีอาจได้รับการยอมรับโดยหุ่นยนต์ที่ขยายลง

วิธีการกำหนดภาษาก็คือโดยวิธีการของเครื่องทัวริง


5

จากลำดับชั้นของชัมสกีมีภาษาทางการสี่ประเภท (แต่ละภาษาเป็นส่วนย่อยของภาษาหลังจากนั้น):

ภาษาอย่างเป็นทางการปกติสามารถอธิบายได้ด้วย:

  1. ไวยากรณ์ปกติ
  2. Finite Automaton (Deterministic / Nondeterministic)
  3. การแสดงออกปกติ

1. , 2. และ 3. เทียบเท่าและจากหนึ่งในนั้นคุณสามารถสร้างคนอื่น ๆ

ภาษาทางการที่ไม่มีบริบทสามารถอธิบายได้โดย:

  1. ไวยากรณ์ที่ไม่มีบริบท
  2. หุ่นยนต์กดลง

นอกจากนี้ 1 และ 2 เทียบเท่ากัน

บริบทภาษาอย่างเป็นทางการสามารถอธิบายได้ด้วย:

  1. หุ่นยนต์ที่มีขอบเขต จำกัด เชิงเส้น (เครื่องทัวริงกับเทป จำกัด )

ภาษาอย่างเป็นทางการนับซ้ำสามารถอธิบายได้ด้วย:

  1. เครื่องทัวริงรวม

และทุกชั้นเรียนภาษาอื่น ๆ ?
— Raphael

และภาษาไร้ชนชั้น?
— Dave Clarke

ชัมสกีไม่ได้พูดว่าภาษาเหล่านี้เป็นภาษาประเภทเดียว - พวกเขาเป็นเพียงสี่ประเภทที่เขาพบว่ามีความสำคัญและเรายังคงพบว่ามันมีความสำคัญ แต่ก็มีอีกหลายประเภท
— reinierpost

5

นอกจากคำตอบอื่น ๆ แล้วเราสามารถอธิบายและจำแนกภาษาในแง่ของ "เครื่องกำเนิด" และคุณสมบัติการปิด ตัวอย่างเช่นมันเหมาะสมที่จะพูดคุยเกี่ยวกับAFL ที่เล็กที่สุดที่สร้างขึ้นโดยบางภาษา จุดเริ่มต้นที่ดีสำหรับการเรียนรู้เกี่ยวกับคำอธิบายประเภทนี้คือหนังสือเล่มนี้ถึงแม้ว่ามันจะค่อนข้างยากที่จะหาสำเนาของมัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.