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

সাধারণ ব্যাকরণের বন্ধন বৈশিষ্ট্য -- আনুষ্ঠানিকভাবে যাচাইকৃত

মৌলিক তথ্য

  • পেপার আইডি: 2302.06420
  • শিরোনাম: Closure Properties of General Grammars -- Formally Verified
  • লেখক: মার্টিন ডভোরাক (ইনস্টিটিউট অফ সায়েন্স অ্যান্ড টেকনোলজি অস্ট্রিয়া), জাসমিন ব্ল্যাঞ্চেট (লুডভিগ-ম্যাক্সিমিলিয়ান্স-ইউনিভার্সিটেট মিউনিখ)
  • শ্রেণীবিভাগ: cs.FL (আনুষ্ঠানিক ভাষা এবং অটোমেটা তত্ত্ব)
  • প্রকাশিত সম্মেলন: ১৪তম আন্তর্জাতিক ইন্টারেক্টিভ থিওরেম প্রমাণ সম্মেলন (ITP 2023)
  • পেপার লিঙ্ক: https://arxiv.org/abs/2302.06420

সারসংক্ষেপ

এই পেপারটি Lean 3 প্রমাণ সহায়ক ব্যবহার করে সাধারণ ব্যাকরণ (অর্থাৎ টাইপ-0 ব্যাকরণ) আনুষ্ঠানিকভাবে সংজ্ঞায়িত করেছে। লেখকরা পুনর্লিখন নিয়ম এবং ব্যাকরণ দ্বারা উদ্ভূত শব্দের মৌলিক ধারণা সংজ্ঞায়িত করেছেন এবং চারটি ক্রিয়াকলাপের অধীনে টাইপ-0 ভাষা শ্রেণীর বন্ধন বৈশিষ্ট্য প্রমাণ করেছেন: সংযোগ, বিপরীতকরণ, সংযোজন এবং ক্লিনি তারকা ক্রিয়াকলাপ। সাহিত্য প্রধানত টিউরিং মেশিন যুক্তির উপর দৃষ্টি নিবদ্ধ করে, যা আনুষ্ঠানিকভাবে যাচাই করা আরও কঠিন হতে পারে। ক্লিনি তারকা ক্রিয়াকলাপের জন্য, লেখকরা সাহিত্যকে অনুসরণ করতে পারেননি এবং ব্যাকরণ-ভিত্তিক তাদের নিজস্ব নির্মাণ প্রস্তাব করেছেন।

গবেষণা পটভূমি এবং প্রেরণা

সমস্যার পটভূমি

  1. আনুষ্ঠানিক ভাষা তত্ত্বের গুরুত্ব: আনুষ্ঠানিক ভাষা ধারণা কম্পিউটার বিজ্ঞানের মূল ভিত্তি, যা টিউরিং মেশিন এবং আনুষ্ঠানিক ব্যাকরণ সহ একাধিক আনুষ্ঠানিকতার মাধ্যমে স্বীকৃত হতে পারে
  2. টাইপ-0 ব্যাকরণ এবং টিউরিং মেশিনের সমতুল্যতা: টিউরিং মেশিন এবং সাধারণ ব্যাকরণ উভয়ই পুনরাবৃত্তিমূলকভাবে গণনাযোগ্য ভাষা বা টাইপ-0 ভাষার একই শ্রেণী চিহ্নিত করে
  3. বিদ্যমান আনুষ্ঠানিকীকরণ কাজের সীমাবদ্ধতা: প্রমাণ সহায়কদের মধ্যে টিউরিং মেশিনের আনুষ্ঠানিকীকরণ সম্পর্কে ব্যাপক কাজ রয়েছে, কিন্তু সাধারণ ব্যাকরণের আনুষ্ঠানিকীকরণ কাজ তুলনামূলকভাবে অপ্রতুল

গবেষণা প্রেরণা

  1. ব্যাকরণের সুবিধা: সাধারণ ব্যাকরণ টিউরিং মেশিনের চেয়ে সংজ্ঞায়িত করা সহজ, এবং সাধারণ ব্যাকরণ সম্পর্কে কিছু প্রমাণ টিউরিং মেশিনের অনুরূপ বৈশিষ্ট্যের প্রমাণের চেয়ে অনেক সহজ
  2. বন্ধন বৈশিষ্ট্যের গুরুত্ব: টাইপ-0 ভাষার বন্ধন বৈশিষ্ট্য আনুষ্ঠানিক ভাষা তত্ত্বের মৌলিক ফলাফল
  3. আনুষ্ঠানিক যাচাইকরণের প্রয়োজন: এই মৌলিক ফলাফলগুলির সঠিকতা নিশ্চিত করতে মেশিন-পরীক্ষিত কঠোর প্রমাণের প্রয়োজন

মূল অবদান

  1. সাধারণ ব্যাকরণের প্রথম আনুষ্ঠানিকীকরণ: Lean 3-এ টাইপ-0 ব্যাকরণের মৌলিক ধারণা এবং ক্রিয়াকলাপের সম্পূর্ণ সংজ্ঞা
  2. চারটি বন্ধন বৈশিষ্ট্যের আনুষ্ঠানিক প্রমাণ:
    • সংযোগ বন্ধন
    • বিপরীতকরণ বন্ধন
    • সংযোজন বন্ধন
    • ক্লিনি তারকা ক্রিয়াকলাপ বন্ধন
  3. উদ্ভাবনী ক্লিনি তারকা নির্মাণ: সাহিত্যে ব্যাকরণ-ভিত্তিক নির্মাণের অভাবের কারণে, লেখকরা তাদের নিজস্ব ব্যাকরণ-ভিত্তিক পদ্ধতি উদ্ভাবন করেছেন
  4. পুনর্ব্যবহারযোগ্য বিমূর্ত কাঠামো: পুনরাবৃত্তিমূলক কোড হ্রাস করতে এবং সাধারণ প্রমাণ প্যাটার্ন প্রদান করতে lifted_grammar কাঠামো বিকশিত করেছেন
  5. প্রায় ১২,৫০০ লাইনের ওপেন সোর্স 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)

প্রযুক্তিগত উদ্ভাবন পয়েন্ট

১. lifted_grammar বিমূর্ত কাঠামো

পুনরাবৃত্তিমূলক কোড হ্রাস করার জন্য, লেখকরা একটি বিমূর্ত কাঠামো বিকশিত করেছেন:

  • একটি ছোট ব্যাকরণ g0 এবং একটি বৃহত্তর ব্যাকরণ g ধারণ করে
  • বিভিন্ন অ-টার্মিনাল প্রকারের মধ্যে রূপান্তরের জন্য lift_nt এবং sink_nt ফাংশন প্রদান করে
  • ইনজেকশন এবং সংশ্লিষ্ট নিয়মের সঠিকতা নিশ্চিত করে

২. সংযোজন ক্রিয়াকলাপের উদ্ভাবনী পরিচালনা

ঐতিহ্যবাহী প্রসঙ্গ-মুক্ত ব্যাকরণ সংযোজন নির্মাণ সাধারণ ব্যাকরণে ব্যর্থ হয়। লেখকের সমাধান:

  • প্রতিটি টার্মিনালের জন্য প্রক্সি অ-টার্মিনাল তৈরি করে
  • নিশ্চিত করে যে g1 এবং g2 ব্যবহৃত অ-টার্মিনালগুলি সম্পূর্ণভাবে আলাদা
  • সংযোজন সীমানা জুড়ে স্ট্রিং ম্যাচিং সমস্যা এড়ায়

৩. ক্লিনি তারকার মূল নির্মাণ

সাহিত্যে ব্যাকরণ-ভিত্তিক নির্মাণের অভাবের কারণে, লেখকরা একটি নতুন পদ্ধতি উদ্ভাবন করেছেন:

  • শব্দগুলিকে বিচ্ছিন্ন করার "বগি" তৈরি করতে বিভাজক # প্রবর্তন করে
  • শুরু থেকে শেষ পর্যন্ত অতিক্রম করে এবং বিভাজক সরাতে একটি পরিষ্কারক R ব্যবহার করে
  • নতুন নিয়ম সেট: P* = P ∪ {Z → ZS#, Z → R#, R# → R, R# → ε} ∪ {Rt → tR | t ∈ T}

পরীক্ষামূলক সেটআপ

আনুষ্ঠানিক পরিবেশ

  • প্রমাণ সহায়ক: Lean 3
  • গাণিতিক লাইব্রেরি: mathlib
  • কোড স্কেল: প্রায় ১২,৫০০ লাইন সুসংগঠিত 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. ক্লিনি তারকা বন্ধন: theorem T0_of_star_T0 (L : language T) : is_T0 L → is_T0 L.star

প্রমাণ জটিলতা বিশ্লেষণ

  • সংযোগ এবং বিপরীতকরণ: তুলনামূলকভাবে সহজ, প্রধানত মান নির্মাণ ব্যবহার করে
  • সংযোজন: মধ্যম জটিলতা, সীমানা ম্যাচিং সমস্যা পরিচালনা করতে প্রয়োজন
  • ক্লিনি তারকা: সবচেয়ে জটিল, শুধুমাত্র star_induction লেমা ৩০০০ লাইনের বেশি কোড

পার্শ্ব পণ্য ফলাফল

  • প্রসঙ্গ-মুক্ত ব্যাকরণ: প্রসঙ্গ-মুক্ত ভাষার বন্ধন বৈশিষ্ট্য প্রতিষ্ঠা করতে প্রমাণ পুনর্ব্যবহার করা যায়
  • সংযোজন লেমা: theorem CF_of_CF_u_CF ইত্যাদি সরাসরি প্রসঙ্গ-মুক্ত ভাষায় প্রয়োগ করা যায়

সম্পর্কিত কাজ

ব্যাকরণ আনুষ্ঠানিকীকরণ

  • প্রসঙ্গ-মুক্ত ব্যাকরণ: কার্লসন ইত্যাদি (Mizar), মিনামিডে (Isabelle/HOL), বার্থওয়াল এবং নরিশ (HOL4), ফিরসভ এবং উস্তালু (Agda), রামোস (Coq)
  • সাধারণ ব্যাকরণ: এটি প্রথম সম্পূর্ণ আনুষ্ঠানিকীকরণ

অন্যান্য গণনা মডেল

  • সীমিত অটোমেটা: থম্পসন এবং ডিলিস (Lean), নিয়মিত অভিব্যক্তি আনুষ্ঠানিকীকরণ
  • টিউরিং মেশিন: একাধিক প্রমাণ সহায়কে বাস্তবায়ন, সর্বশেষ বালবাচ কাজ এমনকি কুক-লেভিন উপপাদ্য প্রমাণ করেছে
  • λ ক্যালকুলাস: নরিশ (HOL4), ফরস্টার ইত্যাদি (Coq)
  • আংশিক পুনরাবৃত্তিমূলক ফাংশন: নরিশ (HOL4), কার্নেইরো (Lean)

উপসংহার এবং আলোচনা

প্রধান উপসংহার

  1. ব্যাকরণ টিউরিং মেশিনের চেয়ে উন্নত: বন্ধন বৈশিষ্ট্য প্রমাণের জন্য, ব্যাকরণ টিউরিং মেশিনের চেয়ে আরও সুবিধাজনক হতে পারে
  2. আনুষ্ঠানিকীকরণের সম্ভাব্যতা: জটিল ভাষা তত্ত্ব ফলাফল আধুনিক প্রমাণ সহায়কে সফলভাবে আনুষ্ঠানিক করা যায়
  3. বিমূর্ততার গুরুত্ব: ভাল বিমূর্ততা (যেমন lifted_grammar) বড় আকারের আনুষ্ঠানিকীকরণের জন্য গুরুত্বপূর্ণ

সীমাবদ্ধতা

  1. জটিলতা শ্রেণী: ব্যাকরণ গুরুত্বপূর্ণ জটিলতা শ্রেণী (যেমন P শ্রেণী) সংজ্ঞায়িত করতে পারে না, এখনও টিউরিং মেশিন ইত্যাদি মডেলের প্রয়োজন
  2. গঠনমূলকতা: লেখকরা উন্নয়নকে গঠনমূলক করার চেষ্টা করেননি
  3. ছেদ বন্ধন: ছেদ বন্ধন আনুষ্ঠানিক করেননি, কারণ শুধুমাত্র ব্যাকরণ-ভিত্তিক কমনীয় নির্মাণ জানেন না

ভবিষ্যত দিকনির্দেশনা

  1. সম্পূর্ণ চমস্কি শ্রেণীবিন্যাস: প্রসঙ্গ-সংবেদনশীল, প্রসঙ্গ-মুক্ত এবং নিয়মিত ব্যাকরণকে লাইব্রেরিতে অন্তর্ভুক্ত করা
  2. সমতুল্যতা প্রমাণ: সাধারণ ব্যাকরণ এবং টিউরিং মেশিনের সমতুল্যতা প্রমাণ করার চেষ্টা করা
  3. mathlib সংযোগ: নিয়মিত ভাষার mathlib ফলাফলকে এই লাইব্রেরিতে সংযুক্ত করা

গভীর মূল্যায়ন

শক্তি

  1. অগ্রগামী কাজ: সাধারণ ব্যাকরণের প্রথম সম্পূর্ণ আনুষ্ঠানিকীকরণ, গুরুত্বপূর্ণ শূন্যতা পূরণ করে
  2. প্রযুক্তিগত উদ্ভাবন: ক্লিনি তারকার মূল নির্মাণ গভীর তাত্ত্বিক দক্ষতা প্রদর্শন করে
  3. প্রকৌশল গুণমান: ১২,৫০০ লাইন উচ্চ-মানের কোড, ভাল বিমূর্ত ডিজাইন
  4. তাত্ত্বিক অবদান: প্রমাণ করে যে ব্যাকরণ-ভিত্তিক পদ্ধতি কিছু ক্ষেত্রে টিউরিং মেশিন পদ্ধতির চেয়ে উন্নত
  5. পুনর্ব্যবহারযোগ্যতা: lifted_grammar ইত্যাদি বিমূর্ততা পরবর্তী কাজের জন্য ভিত্তি প্রদান করে

অপূর্ণতা

  1. অভিব্যক্তি ক্ষমতা সীমাবদ্ধতা: জটিলতা তত্ত্বে গুরুত্বপূর্ণ ধারণা পরিচালনা করতে পারে না
  2. গঠনমূলকতা অনুপস্থিতি: গঠনমূলক গণিতের প্রয়োজনীয়তা বিবেচনা করেনি
  3. সম্পূর্ণতা: ছেদ ইত্যাদি গুরুত্বপূর্ণ ক্রিয়াকলাপের পরিচালনা অনুপস্থিত
  4. ডকুমেন্টেশন: কিছু প্রযুক্তিগত বিবরণের ব্যাখ্যা আরও বিস্তারিত হতে পারে

প্রভাব

  1. তাত্ত্বিক তাৎপর্য: আনুষ্ঠানিক ভাষা তত্ত্বের মেশিন যাচাইকরণের ভিত্তি স্থাপন করে
  2. পদ্ধতিগত মূল্য: বড় আকারের আনুষ্ঠানিকীকরণ প্রকল্পের সর্বোত্তম অনুশীলন প্রদর্শন করে
  3. সম্প্রদায় অবদান: ওপেন সোর্স কোড লাইব্রেরি সম্পর্কিত গবেষণা প্রচার করবে
  4. শিক্ষামূলক মূল্য: আনুষ্ঠানিক পদ্ধতি শেখার জন্য একটি চমৎকার কেস স্টাডি হিসাবে কাজ করতে পারে

প্রযোজ্য পরিস্থিতি

  1. তাত্ত্বিক কম্পিউটার বিজ্ঞান: ভাষা তত্ত্ব এবং অটোমেটা তত্ত্বের গবেষণা
  2. আনুষ্ঠানিক গণিত: কঠোর প্রমাণের প্রয়োজন এমন গাণিতিক গবেষণা
  3. কম্পাইলার যাচাইকরণ: ব্যাকরণ বিশ্লেষণ এবং ভাষা প্রক্রিয়াকরণের সঠিকতা নিশ্চিতকরণ
  4. শিক্ষা: আনুষ্ঠানিক ভাষা কোর্সের সহায়ক উপকরণ

সংদর্ভ

পেপারটি ২৬টি গুরুত্বপূর্ণ সংদর্ভ উদ্ধৃত করেছে, যা অন্তর্ভুক্ত করে:

  • ক্লাসিক পাঠ্যপুস্তক: আহো এবং উলম্যানের পার্সিং তত্ত্ব, হপক্রফট ইত্যাদির অটোমেটা তত্ত্ব
  • আনুষ্ঠানিক কাজ: বিভিন্ন প্রমাণ সহায়কে গণনা মডেলের বাস্তবায়ন
  • সরঞ্জাম ডকুমেন্টেশন: Lean 3 এবং mathlib এর সম্পর্কিত সামগ্রী

সারসংক্ষেপ: এটি তাত্ত্বিক কম্পিউটার বিজ্ঞানের একটি উচ্চ-মানের পেপার, যা শুধুমাত্র প্রযুক্তিগতভাবে গুরুত্বপূর্ণ অবদান নয় বরং আনুষ্ঠানিক পদ্ধতিতেও মূল্যবান অভিজ্ঞতা প্রদান করে। লেখকের কাজ একটি সম্পূর্ণ আনুষ্ঠানিক চমস্কি শ্রেণীবিন্যাস নির্মাণের জন্য একটি দৃঢ় ভিত্তি স্থাপন করেছে এবং আনুষ্ঠানিক ভাষা তত্ত্ব এবং প্রমাণ সহায়ক সম্প্রদায় উভয়ের জন্যই গুরুত্বপূর্ণ মূল্য রয়েছে।