ในส่วนแรกเราจะแสดงอัลกอริธึมชี้แจงสำหรับการตัดสินใจแบบวงกลม ในส่วนที่สองเราแสดงให้เห็นว่านี่เป็นปัญหาที่เกิดจาก coNP-hard ในส่วนที่สามเราแสดงให้เห็นว่าทุกภาษาวงกลมเป็นสหภาพของภาษาของรูปแบบr + (ที่นี่rอาจเป็น regexp ที่ว่างเปล่า); สหภาพไม่จำเป็นต้องแยกจากกัน ในส่วนที่สี่เราแสดงภาษาวงกลมซึ่งไม่สามารถเขียนเป็นผลรวม∑ r + ir+R∑r+ผมฉัน
แก้ไข: รวมการแก้ไขบางอย่างตามความเห็นของ Mark โดยเฉพาะอย่างยิ่งการกล่าวอ้างก่อนหน้านี้ของฉันว่าการแก้ไขแบบวงกลมคือ coNP-complete หรือ NP-hard ได้รับการแก้ไข
แก้ไข: แก้ไขรูปแบบปกติจากΣ R * ฉันจะΣ R +ฉัน จัดแสดงภาษา "ไม่ชัดเจนโดยเนื้อแท้"Σr∗ผมΣr+ผม
ต่อความคิดเห็นของ Peter Taylor ต่อไปนี้เป็นวิธีการตัดสินใจ (ไร้ประสิทธิภาพอย่างยิ่ง) ว่าภาษาใดบ้าง สร้าง DFA ใหม่ที่รัฐเป็นn- tuples ของรัฐเก่า DFA ใหม่นี้ใช้งานNสำเนาของ DFA เก่าแบบขนานnn
หากภาษาไม่ได้เป็นวงกลมแล้วมีคำWเช่นว่าถ้าเราทำงานมันผ่าน DFA ซ้ำ ๆ เริ่มต้นด้วยสถานะเริ่มต้นที่0แล้วเราได้รับรัฐs 1 , ... , s nดังกล่าวว่าs 1จะรับ แต่อย่างหนึ่ง ของคนอื่น ๆ ไม่ได้รับการยอมรับ (ถ้าทั้งหมดของพวกเขาได้รับการยอมรับแล้วจากนั้นลำดับs 0 , ... , s nวงจรต้องเพื่อให้W *อยู่เสมอในภาษา) กล่าวอีกนัยหนึ่งเรามีเส้นทางจากs 0 , … ,Ws0s1, … , sns1s0, … , snW* * * * s n- 1ถึง s 1 ,…, s nเมื่อ s 1ยอมรับ แต่คนอื่นไม่ยอมรับ ในทางกลับกันถ้าภาษานั้นเป็นวงกลมแล้วนั่นจะไม่เกิดขึ้นs0, … , sn - 1s1, … , sns1
ดังนั้นเราจึงลดปัญหาดังกล่าวเป็นการทดสอบการเข้าถึงโดยตรงแบบง่าย ๆ (แค่ตรวจสอบ " n " tuples ที่เป็นไปได้ทั้งหมด)n
ปัญหาของการเวียนคือ coNP-hard สมมติว่าเรากำลังได้รับเช่น 3SAT กับnตัวแปร→ xและเมตรข้อC 1 , ... , Cเมตร เราสามารถสันนิษฐานได้ว่าn = m (เพิ่มตัวแปรดัมมี่) และnนั้นเป็นไพร์ม (มิฉะนั้นจะหาไพร์มระหว่างnและ2 nnx⃗ ม.ค1, … , Cม.n = mnn2 nโดยใช้การทดสอบแบบดั้งเดิมของ AKS และเพิ่มตัวแปรและประโยคจำลอง)
พิจารณาภาษาต่อไปนี้: "อินพุตไม่ได้อยู่ในรูปแบบ→ x 1 ⋯ → x nโดยที่→ x iเป็นการมอบหมายที่น่าพอใจสำหรับC i " มันง่ายที่จะสร้างO ( n 2 ) DFA สำหรับภาษานี้ หากภาษาไม่ได้เป็นวงกลมแล้วมีคำWในภาษาที่อำนาจของซึ่งบางคนไม่ได้อยู่ในภาษา ตั้งแต่คำพูดเพียงไม่ได้อยู่ในภาษาที่มีความยาวn 2 , Wจะต้องมีความยาว1หรือnx⃗ 1⋯ x⃗ nx⃗ ผมคผมO(n2)wn2w1n nถ้ามันมีความยาว1พิจารณา w nแทน (ยังอยู่ในภาษา) เพื่อให้ wอยู่ในภาษาและ w nไม่ได้อยู่ในภาษา ความจริงที่ว่า w nไม่ได้อยู่ในภาษาหมายความว่า wคือการมอบหมายที่น่าพอใจ1wnwwnwnw
ในทางกลับกันการมอบหมายที่น่าพอใจใด ๆ แปลเป็นคำที่พิสูจน์ความไม่เป็นวงกลมของภาษา: การมอบหมายที่น่าพอใจwเป็นของภาษา แต่w nไม่ได้ ดังนั้นภาษาจึงเป็นแบบวงกลมถ้าอินสแตนซ์ 3SAT ไม่น่าพอใจwwn
ในส่วนนี้เราจะหารือเกี่ยวกับรูปแบบปกติสำหรับภาษาวงกลม พิจารณา DFA บางอย่างสำหรับภาษาวงกลมL ลำดับC = C 0 , …เป็นจริงถ้าC 0 = s (สถานะเริ่มต้น) รัฐอื่น ๆ ทั้งหมดกำลังยอมรับและC i = C jหมายถึงC i + 1 = CLC=C0,…C0=sCi=Cj j + 1Ci+1=Cj+1 1ดังนั้นลำดับที่แท้จริงทุกครั้งจะเป็นระยะและในที่สุดก็มีเพียงลำดับที่แท้จริงจำนวนมากเท่านั้น (เนื่องจาก DFA นั้นมีหลายรัฐที่มีขอบเขต)
เราบอกว่าเป็นคำที่จะทำงานตามCCถ้าคำเตะ DFA จากรัฐคฉันไปยังรัฐคฉัน+ 1สำหรับทุกฉัน ชุดของคำดังกล่าวทั้งหมดE ( C )เป็นปกติ (อาร์กิวเมนต์คล้ายกับส่วนแรกของคำตอบนี้) โปรดทราบว่าE ( C )เป็นส่วนหนึ่งของLcici+1iE(C)E(C)L
ได้รับจริงลำดับCกำหนดC kจะเป็นลำดับC k ( T ) = C ( k T ) ลำดับC kก็เป็นจริงเช่นกัน เนื่องจากมีเพียงขอบเขตหลายลำดับที่แตกต่างกันC kภาษาD ( C )ซึ่งเป็นสหภาพของทั้งหมดE (CCkCk(t)=C(kt)CkCkD(C) C k )ยังเป็นปกติE(Ck)
เราอ้างว่าD ( C )มีคุณสมบัติที่ว่าถ้าx , y ที่∈ D ( C )แล้วx Y ∈ D ( C ) อันที่จริงสมมติว่าx ∈ C kและY ∈ Cลิตร จากนั้นx Y ∈ C k + L ดังนั้นD ( C ) = D ( C ) +สามารถเขียนในรูปแบบrD(C)x,y∈D(C)xy∈D(C)x∈Cky∈Clxy∈Ck+lD(C)=D(C)+ +r+สำหรับการแสดงออกปกติบางอย่างrr R
ทุกคำที่Wในสอดคล้องกับภาษาที่บางลำดับที่แท้จริงCคือมีอยู่ลำดับที่แท้จริงCที่Wพฤติกรรมตาม ดังนั้นLเป็นสหภาพของD ( C )มากกว่าทุกจริงลำดับC ดังนั้นทุกภาษาวงกลมมีตัวแทนของรูปแบบΣ R +ฉัน ในทางกลับกันทุกภาษาดังกล่าวเป็นวงกลม (เล็กน้อย)wCCwLD(C)C∑r+i
พิจารณาภาษาวงกลมLของคำทั่ว, Bที่มีทั้งจำนวนหรือแม้กระทั่ง's หรือเลขคู่ของข ' s (หรือทั้งสอง) เราแสดงให้เห็นว่ามันไม่สามารถเขียนเป็นผลรวมdis r + i ; โดย "disjoint" เราหมายถึงr + i ∩ r + j = ∅La,bab∑r+ir+i∩r+j=∅ ∅
ให้N ฉันเป็นขนาดของ DFA บางค่าสำหรับr + iและN > max N iเป็นจำนวนเต็มคี่ พิจารณาx = a N b N ! . ตั้งแต่x ∈ L , x ∈ R + ผมบางผม โดยแทรกสูบน้ำที่เราสามารถปั๊มคำนำหน้าของxความยาวที่มากที่สุดN ดังนั้นr + i จึงสร้างz = a N !Nir+iN>maxNix=aNbN!x∈Lx∈r+iixNr+i b N !z=aN!bN!. ในทำนองเดียวกันy = a N ! ขNถูกสร้างขึ้นโดยบางR + Jซึ่งยังสร้างZ โปรดทราบว่าฉัน≠ เจตั้งแต่x Y ∉ L ดังนั้นการเป็นตัวแทนจึงไม่สามารถแยกออกจากกันได้y=aN!bNr+jzi≠jxy∉L