ল্যাম্বদা-ক্যালকুলাসের এক্সটেনশনে vs-রূপান্তর বনাম এক্সটেনশনে


14

আমি প্রায়শই η-রূপান্তর এবং এক্সটেনশনেটির মধ্যে সম্পর্কের দ্বারা বিভ্রান্ত হয়ে পড়েছি।

সম্পাদনা: মন্তব্য অনুসারে, মনে হচ্ছে আমি এক্সটেনশনাল সমতুল্যতা এবং পর্যবেক্ষণ সমতুল্যের মধ্যে সম্পর্ক সম্পর্কেও বিভ্রান্ত। তবে কমপক্ষে আগদাতে ফাংশনগুলির জন্য এক্সটেনশনাল সমতা সহ (একটি পোলুলেট হিসাবে), এবং একটি সহজ-টাইপযুক্ত ল্যাম্বডা ক্যালকুলাসের (যার পুরোপুরি বিমূর্ত শব্দার্থ রয়েছে, যদি আমি ভুল না করি), ড্যানোটেশনাল সমতুল্যতা পর্যবেক্ষণের সমতুল্যের সমান। মতামত বা উত্তরে নির্দ্বিধায় আমাকে; আমি এই বিষয়গুলিতে কখনও নিয়মতান্ত্রিক শিক্ষা অর্জন করতে পারি নি।

Untyped ল্যামডা-ক্যালকুলাসে ETA-নিয়ম extensionality নিয়ম হিসাবে একই প্রমাণ সিস্টেম, যেমন Barendregt দ্বারা প্রমাণিত (ইন উদাহৃত দেয় উত্তর থেকে এই প্রশ্নের )। আমি বুঝতে পেরেছি যে এটা-রুলের সাথে প্রুফ সিস্টেমটি পর্যবেক্ষণের সমতুল্যতার জন্য সম্পূর্ণ (অন্যান্য উত্তর থেকে, এর জন্য rule-বিধি বিধি প্রয়োজন হতে পারে, অর্থাৎ, বাইন্ডার IIUC এর অধীনে হ্রাস; আমারও এই নিয়মটি যুক্ত করার কোনও সমস্যা নেই) ।

তবে, যদি আমরা একটি টাইপ করা ক্যালকুলাসে স্যুইচ করি এবং অতিরিক্ত বেস প্রকার এবং সংশ্লিষ্ট ভূমিকা এবং নির্মূলকরণ ফর্মগুলির সাথে এই ক্যালকুলাসটি প্রসারিত করি তবে কী হবে? আমরা কি পর্যবেক্ষণ সমতুল্যের জন্য একটি সম্পূর্ণ প্রমাণ সিস্টেম লিখতে পারি? মিচেলের প্রোগ্রামিং ল্যাঙ্গুয়েজসের ফাউন্ডেশন (এফপিএল) অনুসরণ করে আমি অডিওজিমেটিক শব্দার্থক আকারে প্রুফ সিস্টেমগুলির বিষয়ে কথা বলব; প্রুফ সিস্টেম / অ্যাকিয়োমেটিক সিনটিক্স প্রোগ্রামের সমতুল্যতা সংজ্ঞায়িত করে।

প্রশ্ন 1 : বেরেনড্রেগেটের উপপাদ্যটি কি এসটিএলসি পর্যন্ত প্রসারিত হবে? Context-সমতুল্যতা কি সেই প্রসঙ্গে এক্সটেনশনেটির সমতুল্য?

আমি পিসিএফ এর FPL এর আলোচনা ব্রাউজিং করছি (কিন্তু এখনো অধ্যায় শেষ করেন নি), এবং মনে হচ্ছে যে একবার আপনি জোড়া যোগ করুন, extensionality একটি অতিরিক্ত নিয়ম, যথা surjective পেয়ারিং জন্য প্রয়োজন হয়: pair (Proj1 P, Proj2 P) = P। মজার বিষয় হল, এই বিধিটি pairs-বিধিগুলির মতো যুক্তগুলির ভূমিকা এবং নির্মূলকরণের সাথে সম্পর্কিত যা কার্যকারিতা প্রবর্তন এবং নির্মূলের সাথে সম্পর্কিত।

প্রশ্ন 2 : জোড় যুক্ত জোড় টাইপড calc-ক্যালকুলাসে এক্সটেনসিলিটি প্রমাণ করার জন্য কী surjective જોડা axiom যুক্ত করা যথেষ্ট? সম্পাদনা : প্রশ্ন 2 বি : কাঠামোগত মিলের কারণে আমি এই কাগজে উল্লিখিত আইন-শৃঙ্খলা হিসাবে একটি η-আইনকে জড়িত করে তুলছি ?

চলুন এখনই পিসিএফ-এ যাই। এরপরে আমি যে এক্সটেনশনাল সাম্যের বিবরণ দেখেছি তা প্রমাণ করে যে এক্সটেনশনটি প্রবর্তনের দ্বারা প্রমাণের বিধি বোঝায়, তবে তারা পর্যাপ্ত কিনা তা তারা বলে না। যেহেতু পিসিএফ টিউরিং-সম্পূর্ণ, এক্সটেনশনাল সমতা অনস্বীকার্য । তবে এর দ্বারা বোঝা যায় না যে কোনও প্রমাণ প্রমাণ ব্যবস্থা নেই, যেহেতু প্রমাণগুলির দৈর্ঘ্য সীমাহীন। আরও প্রাসঙ্গিকভাবে, এই জাতীয় প্রমাণ ব্যবস্থা গডেলের অসম্পূর্ণতা উপপাদাগুলির বিরোধিতা করবে। এবং এই যুক্তিটি পিসিএফ ছাড়াই এমনকি fixগডেলের সিস্টেম টিতেও প্রযোজ্য might

প্রশ্ন 3 : পিসিএফ-তে পর্যবেক্ষণের সমতুল্যতার জন্য কি একটি সম্পূর্ণ প্রুফ সিস্টেম আছে? পিসিএফ ছাড়া কী হবে fix?

আপডেট: সম্পূর্ণ বিমূর্ততা

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

একদিকে, পিসিএফ সম্পূর্ণ বিমূর্ততা হারায় কারণ সমান্তরাল বা সিমেটিক ডোমেনে বসবাস করে (প্লটকিন 1977) এবং এটি মনে হয় নিরঙ্কার সাথে জড়িত। র‌্যাল্ফ লোডার (২০০০, "চূড়ান্ত পিসিএফ সিদ্ধান্ত নেওয়া যায় না") দেখায় যে ফাইনারি পিসিএফ (প্রাকৃতিক ছাড়াই, তবে অবিচ্ছিন্নতা সহ) ইতিমধ্যে অনস্বীকার্য; অতএব, (যদি আমি সঠিকভাবে যোগ করি) সম্পূর্ণ বিমূর্ত শব্দার্থক গণনাযোগ্য ক্রিয়াকলাপগুলির সাথে ডোমেনগুলিতে সীমাবদ্ধ করতে পারে না।

অন্যদিকে, গডেলের সিস্টেম টি নিন, যা নিরবচ্ছিন্ন নয়। (আমি নিশ্চিত এটির সম্পূর্ণ বিমূর্ত শব্দার্থবিজ্ঞান রয়েছে তবে আমি হ্যাঁ অনুমান করছি, কারণ সমস্যাটি কেবলমাত্র পিসিএফের জন্য উল্লেখ করা হয়েছে; ডোমেনে অবশ্যই উচ্চতর অর্ডারের আদিম পুনরাবৃত্ত ফাংশন থাকতে হবে)। প্রোগ্রামিং ভাষার জন্য হার্পারের ব্যবহারিক ভিত্তি এই ভাষার জন্য পর্যবেক্ষণের সমতুল্যতা নিয়ে আলোচনা করে; সেকেন্ড। 47.4 টি "সাম্যের কিছু আইন" শিরোনামে রয়েছে এবং পর্যবেক্ষণের সমতুল্যের জন্য কিছু গ্রহণযোগ্য প্রমাণ বিধি প্রদর্শন করে। প্রুফ সিস্টেমটি সম্পূর্ণ কিনা তা কোথাও এটি বলা যায় না, সুতরাং আমার ধারণা এটি এটি নয় তবে এটি সম্পন্ন করা যায় কিনা তাও কোথাও নেই। আমার সেরা অনুমানটি গডেলের অসম্পূর্ণতার উপপাদ্যের সাথে সংযুক্ত।


1
আমি মনে করি আমি এর কয়েকটি উত্তর দিতে পারলাম তবে আপনি কী জিজ্ঞাসা করছেন তা নিয়ে আমি বিভ্রান্ত। আপনি যে প্রশ্নটি উল্লেখ করেছেন তা প্রোগ্রামের সমতা নয় about আপনি কি পর্যবেক্ষণ সমতুল্য বলতে চাইছেন? কি অপারেশনাল শব্দার্থক জন্য? সুতরাং, মূলত, যদি আপনি প্রশ্ন 1-এর "প্রমাণ" বলতে কী বোঝায় ঠিক তা ব্যাখ্যা করেন, আমার ধারণা আমি কি অনুমান করতে পারি তা অনুমান করতে পারি। আমার এখন পর্যন্ত সর্বোত্তম অনুমান: আপনি একটি সমীকরণীয় তত্ত্ব চান যা পর্যবেক্ষণের সমতুল্যের জন্য সম্পূর্ণ এবং আপনি আমাদের জিজ্ঞাসা করছেন -rules যথেষ্ট কিনা whether এইটাই কি সেইটা? η
আন্দ্রেজ বাউয়ার

@ আন্দ্রেজবাউর: আপনার অনুমান সঠিক, আমি প্রশ্ন আপডেট করতে শুরু করব।
ব্লেজারব্লেড

আমি অপারেশনাল শব্দার্থক সম্পর্কে নিশ্চিত নই - এটি কি মূল উপপাদ্যের জন্য কোনও পার্থক্য আনবে?
ব্লেজারব্লেড

আমি প্রশ্নটি আরও পরিমার্জন করার চেষ্টা করেছি। তবে আমি এখনও আপনার সেরা অনুমান সঠিক বলে মনে করি।
ব্লেজারব্লেড

একটা ছোট সমস্যা এখানে দেওয়া হল: এটা সত্যিই পরিষ্কার না কি স্বাভাবিক সংখ্যার জন্য! আপনি শুধু শুধু ফাংশন ও পণ্যের ধরনের, তাহলে আপনি পরিষ্কার আছেন: শর্তাবলী পর্যবেক্ষণের সমতুল্য iff তারা হয় β η সমান। আরও সাধারণভাবে, আমি মনে করি এটি সম্পূর্ণ বিমূর্ততার সমস্যার সাথে সম্পর্কিত । ηβη
কোডি

উত্তর:


7

আমি নিশ্চিত নই যে আমি আপনার প্রশ্নের পুরোপুরি উত্তর দিতে পারব, তবে আমি এটিকে একটি শট দেব এবং আমার নিজের কয়েকটি প্রশ্ন জিজ্ঞাসা করব যা এই বিষয়ে আরও কিছু আলোচনা উত্সাহিত করতে পারে।

আমার প্রথম বক্তব্য হচ্ছে: দুটি পদ মধ্যে untyped λ -calculus হতে বলেন হয় observably সমান যে মেয়াদে iff এম : এম টি  বন্ধ এম টি '  বন্ধ  কোথায় বন্ধ মানে হলো "টি β -normal ফর্ম"t,t λM

M t terminates M t terminates 
β

আমি এটা আরও স্বাভাবিক "গহ্বর" বা পদ বিবেচনা খুঁজে প্রেক্ষিতে কেবল পদ পরিবর্তে এম এবং লেখ [ T ] পরিবর্তে এম টি । দুটি মতামত অবশ্যই সমতুল্য (যদি ভেরিয়েবল প্রসঙ্গে আবদ্ধ না হয়), বিমূর্ততা আপনাকে E [ _ ] প্রসঙ্গে λ x শব্দে রূপান্তর করতে দেয় [ এক্স ]E[_]ME[t]M tE[_]λx.E[x]

এখন এটি একটি সত্য যে untyped ক্যালকুলাস পর্যবেক্ষণ সমতা হয় বন্দী না দ্বারা -সাম্য! প্রকৃতপক্ষে শর্তগুলির একটি সম্পূর্ণ শ্রেণি রয়েছে, যা উভয়ই শেষ করে না এবং কোনও মাথা স্বাভাবিক থাকে না এবং তাই সবগুলি পর্যবেক্ষণে সমান। এগুলিকে কখনও কখনও চিরস্থায়ী পদ বা অবিশ্বাস্য শর্তাদি বলা হয় এবং এখানে এই জাতীয় দুটি পদ রয়েছে: ( λ x X x ) ( λ x X x ) এবং ( λ x X x x ) ( λ x βη

(λx.x x)(λx.x x)
এটা দেখানোর জন্য যে এই শর্তাদির নয় বেশ সহজ বিটা η -equal।
(λx.x x x)(λx.x x x)
βη

সব চিরস্থায়ী পদ চিহ্নিত করা হয়, তাহলে পর্যবেক্ষণ সমতা সম্পূর্ণরূপে বন্দী করা হয় একটি ক্লাসিক ফলাফলের দ্বারা (দেখুন Barendregt উপপাদ্য 16.2.7)।


টাইপ করা ক্যালকুলির জন্য এখন। আসুন প্রথমে প্রাকৃতিক সংখ্যা ছাড়াই সহজভাবে টাইপ করা -ক্যালকুলাস বিবেচনা করি । পর্যবেক্ষণ সাম্যের উপরোক্ত সংজ্ঞা তুচ্ছ হয়ে ওঠে, প্রতিটি শব্দটি স্বাভাবিক হিসাবে! আমাদের আরও ভাল পার্থক্য দরকার। আমরা বদ্ধ শর্তাদির জন্য মান সমতা টি 1t 2 ব্যবহার করব, টি 1 এবং টি 2 এর ধরণের উপর অন্তর্ভুক্তির দ্বারা সংজ্ঞায়িত । আসুন প্রথমে প্রতিটি টাইপ এ এর জন্য যুক্ত করুন , অসীম সংখ্যক সি , সি , সিλt1t2t1t2A। আমরা কিছু ধ্রুবকসিএক্সবেছে নেবcA,cA,cA,cxপ্রতিটি ভেরিয়েবল সাথে সম্পর্কিত উপযুক্ত প্রকারের ।x

  1. বেস টাইপ এ , টি 1টি 2 iff β -head স্বাভাবিক ফর্ম টি 1 হয় তোমার দর্শন লগ করা 1 ... তোমার দর্শন লগ করা এন এবং যে এর টন 2 হয় বনাম 1 ... বনাম এন এবং = এবং তোমার দর্শন লগ করা 1বনাম 1 , , U nv n তাদের নিজ নিজ প্রকারে।Bt1t2βt1c u1unt2d v1vnc=du1v1,,unvn

  2. তীর টাইপ এ, iff উভয় পদ β -reduce করার জন্য একটি λ -abstraction।t1t2βλ

মনে রাখবেন যে আমি এই সংজ্ঞাটিতে কেবল রূপান্তর ব্যবহার করি ।β

এখন আমি হতে প্রেক্ষিতে নির্ধারণ: মাথা প্রসঙ্গ, অ্যাপ্লিকেশন, বিমূর্ততা এবং প্রতিকল্পন (বদ্ধ শর্তাবলী দ্বারা) সঙ্গে যথাক্রমে।

[_]E[_] ut E[_]λx. E[_]E[_]θ

আমরা তখন বর্ণনা করতে পারেন এবং T ' , ভাল ধরনের টাইপ টি পর্যবেক্ষণের সমতুল্য হতে যদি এবং কেবল যে প্রসঙ্গ যদি [ : _ ] যেমন যে [ T ] , [ T ' ] ভালভাবে টাইপ করা এবং হয় বন্ধ[ T ] [ T ' ] আমরা লিখতে হবে টি = গুলি টন ' এই ক্ষেত্রেttTE[_]E[t],E[t]

E[t]E[t]
t=obst

এখন এটা পালন করা যে যদি সহজ তারপর T = গুলি টন ' । অন্যান্য দিক কম তুচ্ছ, কিন্তু ঝুলিতে: প্রকৃতপক্ষে, যদি টন = গুলি টন ' , তাহলে আমরা দেখাতে পারি যে, মেয়াদের জন্য সমান বিটা η ধরনের উপর আনয়ন দ্বারা:t=βηtt=obstt=obstβη

  1. বেস টাইপ এ, কেবল নিতে হতে [ : _ ] θ সঙ্গে θ প্রতিকল্পন পাঠায় এক্স থেকে এক্স । আমরা আশা করি আপনি [ T ] = T θ এবং [ T ' ] = T ' θ । আমাদের কাছে t θ β c x u 1 θ u n θ এবং t θ → রয়েছে →E[_][_]θθxcxE[t]=tθE[t]=tθtθβcx u1θunθ । আমরা তখন আছেএক্স = এক্স ' এবং তাই এক্স = এক্স ' । এখন আমরা অবিলম্বে এই উপসংহারে দিতে পারে না যে তোমার দর্শন লগ করা আমি θ = বিটা η বনাম আমি θ । প্রকৃতপক্ষে, যদি তোমার দর্শন লগ করা আমি এবং V আমি হয় λ -abstractions, তারপর জাভাস্ক্রিপ্টে গার্বেজ তোমার দর্শন লগ করা আমি θ বনাম আমি θ ! ট্রিকটি এখানে এক্স পাঠানোtθβcx v1θvnθcx=cxx=xuiθ=βηviθuiviλuiθviθxথেকে এবং এটি প্রয়োজনীয় হিসাবে বহুবার পুনরাবৃত্তি করতে। আমি এখানে বিশদ সম্পর্কে কিছুটা অস্পষ্ট, তবে ধারণাটি বোহমের উপপাদ্যের সাথে সমান ( বারেন্ড্রেগেট আবার 10.4.2)।

    λy.cx~ (y1c1)(yncn)
  2. E[_][_] cycycyytt

    t cy =βη t cy
    t y =βη t y
    λy.t y =βη λ.t yη
    t =βη t

এটা প্রত্যাশার চেয়ে কঠিন ছিল!


ঠিক আছে চলুন সিস্টেম টি মোকাবেলা করা যাক। টাইপ করুনN to the mix, constructors 0 and S, and a recursor recT for each type T, with the "β-rules"

recT u v 0βu
recT u v (S n)βv n (recT u v n)

We want to prove the same theorem as above. It's tempting to add "η-rules" to prove equivalences like:

λx.x =βη recN 0 (λk m.S m)
where the term on the right is the "stupid identity" that peels off m successors just to add them again.

For example let's add this rule:

f (S x) =βη h x (f x)f t =βηrecT (f 0) h t
where x is a fresh variable as in the usual η rule. Now note that this rule is recursively enumerable (you can try every possible choice for h).

Can we prove the same theorem as above? Unfortunately, as you suspected, you're going to run into some Gödel nastiness, or rather, the Kleene variant (see Wikipedia). For every Turing machine M, it's easy to build a term tM in system T such that tM (S S 0) (with n Ses) returns 1 if M finishes in at most n steps and 0 otherwise.

So now if M does not terminate, you can ask whether the (true) equation

tM =λx.0
is provable using the βη rules above. But taking M to be the machine that terminates iff
0 =βη S 0
is provable in system T (with the above rules), you're going to run into trouble, i.e. the equation tM=λx.0 is true but not provable (or Peano Arithmetic is inconsistent!).

Thanks for your answer! My first question is: is it usual to have substitutions in contexts for observational equivalence? At least Plotkin's LCF paper (1997) does not do that (though I can imagine something like that would make sense in some closure calculus, where something like substitutions is part of the syntax). But I can easily see for each "substitution" context one can define a more (for me) "standard" context which uses just lambda-abstraction and application, say (λx.[]) c_x; so I guess the observational equivalence above is equivalent to the definition I'm used to.
Blaisorblade

The "true but not provable" equation is (I assume) t=λx.0, not 0=βηS0, right? To construct M, I guess you just need to enumerate proofs looking for one of 0=βηS0. However, I'm still lost as to why 0 = 1 is hard enough — actually, it should be easy to prove that 0βηS 0 since they're both normal forms, and I'd be surprised if Peano arithmetic weren't strong enough.
Blaisorblade

Say instead that M searches for a proof of the inconsistency of arithmetic. You still have t=λx.0 because arithmetic is consistent, but by the second incompleteness theorem, proving this requires more metatheoretic power than Peano arithmetic (or than the rules we discussed), so our simple rules won't be able to proof this observational equivalence. Does this make sense? I've looked up Wikipedia, but it's not very specific on Kleene's variant of Gödel's result; maybe if I knew that proof better, I would also understand your proof. (Meanwhile, upvoting you anyway).
Blaisorblade

1
3. Note that PA can prove 01, but not "PA0=1", so you can try looking for that proof for ever. I've used the same kind of trick above to find an observational equality in T that can't be captured by any "reasonable" equality rule. You could always add the rule
f 0=g 0f (S 0)=g (S 0)f=g
but that would be non-effective (and complete!). I have a feeling that's not what you're looking for though.
cody

1
That's right! Though it does sometimes make sense to consider such "infinitary" systems for proof-theoretical purposes (e.g. ordinal analysis).
cody
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.