Decidability dari keberadaan invarian induktif dalam aritmatika Presburger

8

Masalah:

Pertimbangkan sejumlah kondisi kontrol terbatas (termasuk status "awal" dan "buruk"), sejumlah variabel integer, dan untuk masing-masing pasangan negara terurut hubungan transisi yang dinyatakan dalam aritmatika Presburger.

Putuskan apakah ada invarian induktif (= stabil oleh post-state dari relasi transisi) yang berisi inisial tetapi bukan keadaan buruk, dapat didefinisikan dalam aritmatika Presburger.

(Perhatikan bahwa masalah ini berbeda dari masalah keterjangkauan dalam aritmatika Presburger, yang jelas-jelas tidak dapat dipastikan (dengan reduksi dari mesin dua loket).)

Saya menduga masalah ini tidak dapat diputuskan, tetapi tidak mengetahui adanya bukti untuk itu. (Ini tentu saja dapat diputuskan.) Adakah yang membuktikan ini?

David Monniaux
sumber
Saya pikir kita perlu memperjelas ini sedikit: keadaan diwakili oleh bilangan bulat , dan relasi transisi adalah rumus ϕ ( n , m ) , dengan rumus ψ g o o d ( n ) dan ψ b a d ( n ) yang masing-masing mewakili kondisi awal dan kondisi buruk? Dan Anda mencari rumus I ( n ) sedemikian rupa sehingga: I ( n ) ϕ ( n ,n,mϕ(n,m)ψgood(n)ψbad(n)I(n) , ψ g o o d ( n ) I ( n ) dan ψ b a d ( n ) ¬ I ( n ) . Apakah ini benar? I(n)ϕ(n,m)I(m)ψgood(n)I(n)ψbad(n)¬I(n)
cody
Ya, kecuali bahwa dan m bukan bilangan bulat tunggal, tetapi vektor hingga bilangan bulat dari dimensi tetap d ("jumlah variabel integer terbatas"). Terimakasih atas klarifikasinya. nmd
David Monniaux
Jadi apa masalah daya jangkau? Jika itu hanya "keadaan dapat dicapai", maka mudah untuk menunjukkan bahwa masalahnya setara: jika ψ b a d ( k ) tidak dapat dijangkau, anggap aku ( k ) menjadi ψ g o o d ( k ) ( y , ϕ ( y , k ) ¬ ψ b a d ( yψbad(k)ψbad(k)I(k) . Apakah saya melewatkan sesuatu? ψgood(k)(y,ϕ(y,k)¬ψbad(y)¬ψbad(k))
cody
Maaf, 1) ini 2) mengapa set Anda harus induktif? misalnya, mengapa harus ψ baik ( k ) ϕ ( k , k ) I ( k ) ? I(n)ψbad(n)ψgood(k)ϕ(k,k)I(k)
David Monniaux

Jawaban:

3

Masalah pemisah invarian induktif untuk aritmatika Presburger tidak dapat diputuskan.

Saya tidak mengetahui bukti dalam literatur yang menunjukkan Anda. (Tampaknya pertanyaan yang sangat mudah saya anggap ada di suatu tempat di luar sana.) Buktinya saya datang dengan mengikuti konstruksi yang kira-kira sama dengan masalah penghentian. Berikut ini gambaran singkatnya. Kami pertama mengasumsikan prosedur keputusan ada dan kemudian membangun sebuah mesin S dengan masukan M . S menggunakan D untuk memutuskan non-terminasi M pada dirinya sendiri dan kemudian S membalikkan output. Kami kemudian menggunakan konstruksi S untuk menunjukkan bahwa D harus memberikan jawaban yang salah pada eksekusi S pada dirinya sendiri.DSMSDMSSDS

Alih-alih mengurangi masalah penghentian, buktinya untuk semua maksud dan tujuan penyajian kembali bukti dari masalah penghentian. Ini sedikit bertele-tele karena akan membutuhkan kondisi posting terkuat yang tepat dapat diekspresikan. (Jika bukti yang lebih sederhana adalah mungkin, saya akan sangat tertarik mendengarnya.) Sekarang ke detail yang mengerikan.


Invarian masalah pemisah induktif untuk Presburger aritmatika adalah untuk diberikan 4-tupel mana ˉ v adalah himpunan berhingga dari nama variabel, aku n i t dan B a d adalah rumus Presburger yang variabel bebasnya ada di ˉ v , N e x t adalah rumus Presburger yang variabel bebasnya ada di ˉ v atau ˉv¯,Init,Next,Badv¯InitBadv¯Nextv¯(salinan prima dari pri v ) apakah ada rumusPresdi aritmatika Presburger dengan variabel bebas di ˉ v sehingga:v¯v¯ϕv¯

  • Initϕ
  • ϕNextϕ
  • ϕ¬Bad

di mana semua variabel bebas di ϕ .ϕϕ

Misalkan masalah ini dapat diputuskan. Kemudian ada mesin Turing yang memutuskan masalah separator (untuk pengkodean rumus Presburger yang diberikan). Biarkan D menjadi Mesin Turing deterministik yang mensimulasikan D . D mengakhiri dan memutuskan masalah separator.DDDD

Sebuah penugasan variabel atas set variabel terbatas adalah konjungsi v i = c i di mana c i adalah konstanta integer.{vi}vi=cici

Saya juga akan mengasumsikan keberadaan mesin Turing ke kompiler aritmatika Presburger dengan beberapa pembatasan yang masuk akal, tetapi kuat. C mengambil sebagai masukan Turing mesin M dengan negara yang unik akhir, t e r m , dan masukan w , dan konstruksi presburger formula I n i t dan N e x t lebih terbatas himpunan variabel ˉ v . Secara informal kami memerlukan jalur rumus Presburger untuk mensimulasikan pelaksanaan M pada wCCMtermwInitNextv¯Mw. Selanjutnya, kami membutuhkannya untuk menjadi simulasi langkah. Secara formal, kami mensyaratkan bahwa:

  • memberikan sebuah konstanta yang unik untuk semua negara kontrol di M dan membiarkan konstan untuk t e r m menjadit e r m ,CMtermterm
  • meliputi variabel p c di ˉ v bahwa trek negara kendali M pada setiap langkah dalam eksekusi,Cpcv¯M
  • menghasilkan I n i t menjadi dalam bentuk penugasan variabel lebih dari ˉ v ,CInitv¯
  • memastikan bahwa N e x t memiliki penerus unik pada penugasan variabel lebih dari ˉ v (yang dapat dijangkau dari I n i t ) jika M bersifat deterministik,CNextv¯InitM
  • untuk itu ada fungsi injeksi dari keadaan M (kontrol dan pita) ke penugasan variabel atas b a r v sehingga N e x t memiliki penggantinya, keadaan awal M on w dipetakan dengan tepat I n i t dan negara kendali M konsisten memberikan p c ,fMbarvNextMwInitMpc
  • bersifat deterministik, danC
  • berakhir.C

Sekarang buat mesin Turing yang mengambil mesin Turing M sebagai input dan lakukan hal berikut (dalam pseudocode):SM

S(M):
   Run C(M,M) to get v, Init and Next
   Simulate D on v, Init, Next, Bad := (pc = <term>)
   If D says a separator exists:
     terminate
   If D says no separator exists:
     loop: goto loop

DSSS(S)CInitNextSSiS(S)siiv¯i=f(si)NextInitSCNextInitf(s0)=v¯i=Init

DϕS(S)termkCDv¯1v¯kϕpc=termD

DS(S)loopkksk+1=sk+2=kϕ=i=1k+1v¯iϕNextInit

  • InitϕInitv¯1
  • ϕNextϕNextiv¯iv¯i+1
  • ϕ¬Badv¯ipcterm

ϕv¯,Init,Next,BadD

D


Melakukan latihan ini benar-benar membuat saya menghargai karya Jerome Leroux pada pemisah untuk sistem penambahan vektor.

Tim
sumber
Ini bagus, terima kasih! Apakah Anda memiliki referensi untuk langkah 2, yaitu "kompiler dari TM ke Presburger Arithmetic"? Tampaknya itulah inti dari buktinya.
cody
1
iiiit2pp2ptl,c,rl2p,c<2,r2p+1(l+p+r=t=>c=1)(l+r=t=>c=0)