2025-11-23T10:13:16.980830

Closure Properties of General Grammars -- Formally Verified

Dvorak, Blanchette
We formalized general (i.e., type-0) grammars using the Lean 3 proof assistant. We defined basic notions of rewrite rules and of words derived by a grammar, and used grammars to show closure of the class of type-0 languages under four operations: union, reversal, concatenation, and the Kleene star. The literature mostly focuses on Turing machine arguments, which are possibly more difficult to formalize. For the Kleene star, we could not follow the literature and came up with our own grammar-based construction.
academic

सामान्य व्याकरण के समापन गुण -- औपचारिक रूप से सत्यापित

मूल जानकारी

  • पेपर ID: 2302.06420
  • शीर्षक: Closure Properties of General Grammars -- Formally Verified
  • लेखक: Martin Dvorak (Institute of Science and Technology Austria), Jasmin Blanchette (Ludwig-Maximilians-Universität München)
  • वर्गीकरण: cs.FL (औपचारिक भाषाएं और ऑटोमेटा सिद्धांत)
  • प्रकाशन सम्मेलन: 14th International Conference on Interactive Theorem Proving (ITP 2023)
  • पेपर लिंक: https://arxiv.org/abs/2302.06420

सारांश

यह पेपर Lean 3 प्रमाण सहायक का उपयोग करके सामान्य व्याकरण (अर्थात् type-0 व्याकरण) को औपचारिक रूप दिया है। लेखकों ने पुनर्लेखन नियमों और व्याकरण द्वारा व्युत्पन्न शब्दों की मूल अवधारणाओं को परिभाषित किया है, और व्याकरण का उपयोग करके type-0 भाषा वर्ग के चार संक्रियाओं के तहत समापन गुणों को प्रमाणित किया है: संघ, विलोम, संयोजन और Kleene तारा संक्रिया। साहित्य मुख्य रूप से ट्यूरिंग मशीन तर्कों पर केंद्रित है, जो औपचारिक रूप देने के लिए अधिक कठिन हो सकते हैं। Kleene तारा संक्रिया के लिए, लेखक साहित्य का पालन नहीं कर सके और अपना स्वयं का व्याकरण-आधारित निर्माण प्रस्तुत किया।

अनुसंधान पृष्ठभूमि और प्रेरणा

समस्या की पृष्ठभूमि

  1. औपचारिक भाषा सिद्धांत का महत्व: औपचारिक भाषा की अवधारणा कंप्यूटर विज्ञान का मूल है, जिसे ट्यूरिंग मशीन और औपचारिक व्याकरण सहित कई औपचारिकताओं के माध्यम से पहचाना जा सकता है
  2. Type-0 व्याकरण और ट्यूरिंग मशीन की समतुल्यता: ट्यूरिंग मशीन और सामान्य व्याकरण दोनों पुनरावर्ती गणनीय भाषाओं या type-0 भाषाओं की एक ही श्रेणी को परिभाषित करते हैं
  3. मौजूदा औपचारिकीकरण कार्य की सीमाएं: प्रमाण सहायकों में ट्यूरिंग मशीन के औपचारिकीकरण पर बहुत काम किया गया है, लेकिन सामान्य व्याकरण के औपचारिकीकरण पर अपेक्षाकृत कम काम किया गया है

अनुसंधान प्रेरणा

  1. व्याकरण के लाभ: सामान्य व्याकरण ट्यूरिंग मशीन की तुलना में परिभाषित करना आसान है, और सामान्य व्याकरण के बारे में कुछ प्रमाण ट्यूरिंग मशीन के समान गुणों के प्रमाणों की तुलना में बहुत सरल हैं
  2. समापन गुणों का महत्व: Type-0 भाषाओं के समापन गुण औपचारिक भाषा सिद्धांत के मौलिक परिणाम हैं
  3. औपचारिक सत्यापन की आवश्यकता: इन मौलिक परिणामों की शुद्धता सुनिश्चित करने के लिए मशीन-जांचे गए कठोर प्रमाणों की आवश्यकता है

मुख्य योगदान

  1. सामान्य व्याकरण का पहला औपचारिकीकरण: Lean 3 में type-0 व्याकरण की मूल अवधारणाओं और संक्रियाओं की पूर्ण परिभाषा
  2. चार समापन गुणों का औपचारिक प्रमाण:
    • संघ समापन
    • विलोम समापन
    • संयोजन समापन
    • Kleene तारा संक्रिया समापन
  3. Kleene तारा का नवीन निर्माण: साहित्य में व्याकरण-आधारित निर्माण की कमी के कारण, लेखकों ने अपनी स्वयं की व्याकरण-आधारित निर्माण विधि का आविष्कार किया
  4. पुनः प्रयोज्य अमूर्त ढांचा: lifted_grammar संरचना विकसित की गई जो दोहराए गए कोड को कम करती है और प्रमाण के लिए सामान्य पैटर्न प्रदान करती है
  5. लगभग 12,500 पंक्तियों का खुला स्रोत Lean कोड आधार: समुदाय के उपयोग के लिए पूर्ण औपचारिक कार्यान्वयन प्रदान करता है

विधि विवरण

मूल परिभाषा संरचना

प्रतीक प्रणाली

inductive symbol (T : Type) (N : Type)
| terminal : T → symbol  
| nonterminal : N → symbol

व्याकरण नियम प्रतिनिधित्व

structure grule (T : Type) (N : Type) :=
( input_L : list (symbol T N))
( input_N : N)  
( input_R : list (symbol T N))
( output_string : list (symbol T N))

व्याकरण परिभाषा

structure grammar (T : Type) :=
(nt : Type)
(initial : nt)
(rules : list (grule T nt))

मुख्य संक्रिया परिभाषाएं

व्याकरण रूपांतरण संबंध

def grammar_transforms (g : grammar T) (w1 w2 : list (symbol T g.nt)) : Prop :=
∃ r : grule T g.nt,
  r ∈ g.rules ∧
  ∃ u v : list (symbol T g.nt),
    w1 = u ++ r.input_L ++ [symbol.nonterminal r.input_N] ++ r.input_R ++ v ∧
    w2 = u ++ r.output_string ++ v

व्युत्पत्ति संबंध

def grammar_derives (g : grammar T) : 
  list (symbol T g.nt) → list (symbol T g.nt) → Prop :=
relation.refl_trans_gen (grammar_transforms g)

तकनीकी नवाचार बिंदु

1. lifted_grammar अमूर्त ढांचा

दोहराए गए कोड को कम करने के लिए, लेखकों ने एक अमूर्त संरचना विकसित की:

  • छोटे व्याकरण g0 और बड़े व्याकरण g को शामिल करता है
  • विभिन्न गैर-टर्मिनल प्रकारों के बीच रूपांतरण के लिए lift_nt और sink_nt फ़ंक्शन प्रदान करता है
  • इंजेक्शन और संबंधित नियमों की शुद्धता सुनिश्चित करता है

2. संयोजन संक्रिया का नवीन उपचार

पारंपरिक संदर्भ-मुक्त व्याकरण संयोजन निर्माण सामान्य व्याकरण में विफल हो जाता है। लेखकों का समाधान:

  • प्रत्येक टर्मिनल के लिए प्रॉक्सी गैर-टर्मिनल बनाता है
  • सुनिश्चित करता है कि g1 और g2 द्वारा उपयोग किए गए गैर-टर्मिनल पूरी तरह से अलग हैं
  • संयोजन सीमा के पार स्ट्रिंग मिलान की समस्याओं से बचता है

3. Kleene तारा का मूल निर्माण

साहित्य में व्याकरण-आधारित निर्माण की कमी के कारण, लेखकों ने एक नई विधि का आविष्कार किया:

  • शब्दों को अलग करने वाले "डिब्बों" का निर्माण करने के लिए विभाजक # का परिचय देता है
  • शुरुआत से अंत तक विभाजकों को हटाने के लिए क्लीनर R का उपयोग करता है
  • नए नियम सेट: P* = P ∪ {Z → ZS#, Z → R#, R# → R, R# → ε} ∪ {Rt → tR | t ∈ T}

प्रायोगिक सेटअप

औपचारिकीकरण पर्यावरण

  • प्रमाण सहायक: Lean 3
  • गणितीय पुस्तकालय: mathlib
  • कोड स्केल: लगभग 12,500 पंक्तियों का अच्छी तरह से स्वरूपित Lean कोड
  • मेटाप्रोग्रामिंग: छोटे पैमाने की स्वचालितता विकसित करने के लिए Lean की मेटाप्रोग्रामिंग ढांचे का उपयोग

सत्यापन विधि

  • संरचनात्मक प्रेरण: व्युत्पत्ति संबंधों के लिए संरचनात्मक प्रेरण प्रमाण
  • केस विश्लेषण: विभिन्न नियम अनुप्रयोग मामलों का विस्तृत केस विश्लेषण
  • अपरिवर्तनीय रखरखाव: जटिल प्रमाणों में महत्वपूर्ण अपरिवर्तनीयों को बनाए रखना

प्रायोगिक परिणाम

मुख्य प्रमेय

  1. संघ समापन: theorem T0_of_T0_u_T0 (L1 L2 : language T) : is_T0 L1 ∧ is_T0 L2 → is_T0 (L1 + L2)
  2. विलोम समापन: theorem T0_of_reverse_T0 (L : language T) : is_T0 L → is_T0 (reverse_lang L)
  3. संयोजन समापन: theorem T0_of_T0_c_T0 (L1 L2 : language T) : is_T0 L1 ∧ is_T0 L2 → is_T0 (L1 * L2)
  4. Kleene तारा समापन: theorem T0_of_star_T0 (L : language T) : is_T0 L → is_T0 L.star

प्रमाण जटिलता विश्लेषण

  • संघ और विलोम: अपेक्षाकृत सरल, मुख्य रूप से मानक निर्माण का उपयोग करते हैं
  • संयोजन: मध्यम जटिलता, सीमा मिलान समस्याओं को संभालने की आवश्यकता है
  • Kleene तारा: सबसे जटिल, केवल star_induction लेम्मा 3000 से अधिक पंक्तियों का है

दुष्प्रभाव परिणाम

  • संदर्भ-मुक्त व्याकरण: प्रमाण को संदर्भ-मुक्त भाषाओं के समापन गुणों को स्थापित करने के लिए पुनः उपयोग किया जा सकता है
  • संयोजन लेम्मा: theorem CF_of_CF_u_CF आदि को सीधे संदर्भ-मुक्त भाषाओं पर लागू किया जा सकता है

संबंधित कार्य

व्याकरण औपचारिकीकरण

  • संदर्भ-मुक्त व्याकरण: Carlson आदि (Mizar), Minamide (Isabelle/HOL), Barthwal और Norrish (HOL4), Firsov और Uustalu (Agda), Ramos (Coq)
  • सामान्य व्याकरण: यह पहला पूर्ण औपचारिकीकरण है

अन्य कम्प्यूटेशनल मॉडल

  • परिमित ऑटोमेटा: Thompson और Dillies (Lean), नियमित अभिव्यक्ति औपचारिकीकरण
  • ट्यूरिंग मशीन: कई प्रमाण सहायकों में कार्यान्वयन, Balbach का नवीनतम कार्य Cook-Levin प्रमेय को भी प्रमाणित करता है
  • λ कलन: Norrish (HOL4), Forster आदि (Coq)
  • आंशिक पुनरावर्ती फ़ंक्शन: Norrish (HOL4), Carneiro (Lean)

निष्कर्ष और चर्चा

मुख्य निष्कर्ष

  1. व्याकरण ट्यूरिंग मशीन से बेहतर है: समापन गुणों के प्रमाणों के लिए, व्याकरण ट्यूरिंग मशीन की तुलना में अधिक सुविधाजनक हो सकता है
  2. औपचारिकीकरण की व्यवहार्यता: जटिल भाषा सिद्धांत परिणामों को आधुनिक प्रमाण सहायकों में सफलतापूर्वक औपचारिक रूप दिया जा सकता है
  3. अमूर्तता का महत्व: अच्छी अमूर्तता (जैसे lifted_grammar) बड़े पैमाने के औपचारिकीकरण के लिए महत्वपूर्ण है

सीमाएं

  1. जटिलता वर्ग: व्याकरण महत्वपूर्ण जटिलता वर्गों (जैसे P वर्ग) को परिभाषित नहीं कर सकते हैं, अभी भी ट्यूरिंग मशीन जैसे मॉडल की आवश्यकता है
  2. रचनात्मकता: लेखकों ने विकास को रचनात्मक बनाने का प्रयास नहीं किया
  3. प्रतिच्छेदन समापन: प्रतिच्छेदन समापन को औपचारिक रूप नहीं दिया गया है, क्योंकि केवल व्याकरण-आधारित सुरुचिपूर्ण निर्माण ज्ञात नहीं है

भविष्य की दिशाएं

  1. पूर्ण Chomsky पदानुक्रम: संदर्भ-संवेदनशील, संदर्भ-मुक्त और नियमित व्याकरण को पुस्तकालय में शामिल करना
  2. समतुल्यता प्रमाण: सामान्य व्याकरण और ट्यूरिंग मशीन की समतुल्यता को प्रमाणित करने का प्रयास
  3. mathlib से जुड़ना: नियमित भाषाओं के mathlib परिणामों को इस पुस्तकालय से जोड़ना

गहन मूल्यांकन

शक्तियां

  1. अग्रणी कार्य: सामान्य व्याकरण का पहला पूर्ण औपचारिकीकरण, महत्वपूर्ण अंतराल को भरता है
  2. तकनीकी नवाचार: Kleene तारा का मूल निर्माण गहरी सैद्धांतिक समझ प्रदर्शित करता है
  3. इंजीनियरिंग गुणवत्ता: 12,500 पंक्तियों का उच्च गुणवत्ता वाला कोड, अच्छी अमूर्त डिजाइन
  4. सैद्धांतिक योगदान: यह साबित करता है कि व्याकरण-आधारित विधि कुछ मामलों में ट्यूरिंग मशीन विधि से बेहतर है
  5. पुनः प्रयोज्यता: lifted_grammar जैसी अमूर्तता भविष्य के कार्य के लिए आधार प्रदान करती है

कमियां

  1. अभिव्यक्ति क्षमता सीमा: जटिलता सिद्धांत में महत्वपूर्ण अवधारणाओं को संभाल नहीं सकता
  2. रचनात्मकता की कमी: रचनात्मक गणित की आवश्यकताओं पर विचार नहीं किया गया
  3. पूर्णता: प्रतिच्छेदन जैसी महत्वपूर्ण संक्रियाओं का उपचार नहीं किया गया
  4. दस्तावेज़: कुछ तकनीकी विवरणों की व्याख्या अधिक विस्तृत हो सकती है

प्रभाव

  1. सैद्धांतिक महत्व: औपचारिक भाषा सिद्धांत के मशीन सत्यापन के लिए आधार स्थापित करता है
  2. पद्धति मूल्य: बड़े पैमाने की औपचारिकीकरण परियोजनाओं के सर्वोत्तम प्रथाओं को प्रदर्शित करता है
  3. समुदाय योगदान: खुला स्रोत कोड आधार संबंधित अनुसंधान को बढ़ावा देगा
  4. शैक्षणिक मूल्य: औपचारिक विधियों को सीखने के लिए एक उत्कृष्ट केस स्टडी के रूप में काम कर सकता है

लागू परिदृश्य

  1. सैद्धांतिक कंप्यूटर विज्ञान: भाषा सिद्धांत और ऑटोमेटा सिद्धांत अनुसंधान
  2. औपचारिक गणित: कठोर प्रमाणों की आवश्यकता वाले गणितीय अनुसंधान
  3. कंपाइलर सत्यापन: व्याकरण विश्लेषण और भाषा प्रसंस्करण की शुद्धता सुनिश्चितता
  4. शिक्षण: औपचारिक भाषा पाठ्यक्रमों के लिए सहायक सामग्री

संदर्भ

पेपर 26 महत्वपूर्ण संदर्भों का हवाला देता है, जिसमें शामिल हैं:

  • शास्त्रीय पाठ्यपुस्तकें: Aho & Ullman की पार्सिंग सिद्धांत, Hopcroft आदि की ऑटोमेटा सिद्धांत
  • औपचारिकीकरण कार्य: विभिन्न प्रमाण सहायकों में कम्प्यूटेशनल मॉडल कार्यान्वयन
  • उपकरण दस्तावेज़: Lean 3 और mathlib संबंधित सामग्री

सारांश: यह सैद्धांतिक कंप्यूटर विज्ञान का एक उच्च गुणवत्ता वाला पेपर है, जो न केवल तकनीकी रूप से महत्वपूर्ण योगदान देता है, बल्कि औपचारिक विधि विज्ञान पर भी मूल्यवान अनुभव प्रदान करता है। लेखकों का कार्य पूर्ण औपचारिक Chomsky पदानुक्रम के निर्माण के लिए एक मजबूत आधार स्थापित करता है, और औपचारिक भाषा सिद्धांत और प्रमाण सहायक समुदाय दोनों के लिए महत्वपूर्ण मूल्य रखता है।