นี่คือคำถาม "ติดตาม B" ถ้ามี สรุป: สิ่งแรกที่ฉันคิดว่าเมื่อฉันพยายามที่จะให้ความหมายกับโปรแกรมที่ไม่ได้กำหนดค่าผลลัพธ์ในความหมายที่ฉันไม่สามารถพิสูจน์สิ่งต่าง ๆ เกี่ยวกับลูปที่ยุติเฉพาะ non-deterministicaly แน่นอนว่ามีคนทำสิ่งที่ต้องทำในสถานการณ์นี้หรืออย่างน้อยก็ชี้ให้เห็นว่ามันเป็นเรื่องยาก แต่ฉันไม่รู้จะไปหามันได้อย่างไร (ดังนั้นจึงมีแท็ก "คำขออ้างอิง")
พื้นหลัง
ฉันต้องการที่จะสร้างแบบจำลองในขณะที่ภาษาที่มีไม่ใช่ระดับ ฉันคิดว่านี่เป็นวิธีที่ชัดเจน (หรืออย่างน้อยก็ไร้เดียงสา) ในการสร้างแบบจำลองภาษาดังกล่าวกับโดเมน Power Smyth แต่แก้ไขให้ถูกต้องถ้าฉันผิด เราจะสร้างแบบจำลองความหมายของคำสั่งในภาษานี้เป็นฟังก์ชั่นที่มีโดเมนเป็นชุดของรัฐและที่มีรหัสเป็นชุดโดยที่เป็นองค์ประกอบน้อยที่สุด คิดเป็นไม่ใช่การเลิกจ้างและเป็นมหาอำนาจแห่งรัฐ
- ถ้ามิฉะนั้น
- ถ้าหรือมิฉะนั้น
- ⟦ P ⟧ σ = ⊥ ⟦ Q ⟧ τ = ⊥ τ ∈ ⟦ P ⟧ σ ⋃ τ ∈ ⟦ P ⟧ σ ⟦ Q ⟧ τถ้าหรือสำหรับมิฉะนั้น
มีคำสั่งบางส่วนที่สมบูรณ์โดยที่สำหรับและถ้าทั้งและเป็นเซตที่เหมาะสมและและเราสามารถขยายสิ่งนี้ไปยังฟังก์ชั่นจากถึงจุด:ถ้าสำหรับทุก ๆและเป็นฟังก์ชั่นที่แมทุกรัฐจะ\⊥ ⊑ S ' S ' ∈ P ( S ) ⊥ S 1 ⊑ S 2 S 1 S 2 S 1 ⊇ S 2ฉS P ( S ) ⊥ ฉ1 ⊑ ฉ2 ฉ1 ( σ ) ⊑ ฉ2 ( σ ) σ ฉ⊥ ⊥
ความหมายของลูปคือเป็นขอบเขตบนสุดของโซ่ , ที่ถ้า ,ถ้าหรือบางมิฉะนั้นtau) (คำจำกัดความนี้อนุมานว่าฉันเพิ่งนิยามไว้คือ Scott ต่อเนื่อง แต่ฉันคิดว่ามันปลอดภัยที่จะละทิ้งสิ่งนั้นไว้)ฉ⊥ ⊑ ฉ( ฉ⊥ ) ⊑ F ( F ( ฉ⊥ ) ) ⊑ ... ฉ( กรัม) ( σ ) = { σ } ⟦ E ⟧ ( σ ) = F ลิตรs อี ⊥ ⟦ P ⟧ σ = ⊥τ ∈ ⟦ P ⟧ σ ⋃ τ ∈ ⟦ P ⟧ σกรัม( τ ) ฉ
คำถาม
พิจารณาโปรแกรมนี้:
b : = t r u e ; w h i l e b d o
สังหรณ์ใจนี้เป็นวงที่สามารถกลับจำนวนแม้แต่บวกใด ๆ หรือไม่ยุติและสอดคล้องกับสิ่งที่เราสามารถพิสูจน์เกี่ยวกับวงนี้โดยใช้เงื่อนไขเสรีนิยมที่อ่อนแอที่สุดว่า (มันเป็นไปได้ที่จะแสดงให้เห็นว่าเป็นห่วง คงที่) แต่เนื่องจากห่วงมีความสามารถที่จะไม่ยุติ (เราสามารถปรับแต่งเป็นทางเลือกที่ไม่ได้กำหนดโดยโปรแกรมที่มักจะใช้สาขาขวามือ) ความหมายของโปรแกรมนี้ใดก็ตามสถานะเริ่มต้นคือ\(ไม่เป็นทางการน้อยกว่า: ฟังก์ชันที่แมปสถานะใด ๆ ที่เป็นเท็จกับตัวเองและสถานะใด ๆ ที่เป็นจริงกับเป็นจุดคงที่ของใช้เพื่อกำหนดลูป)⊥ b b ⊥ f
ซึ่งหมายความว่าความหมายที่ไร้เดียงสาที่ฉันเสนอไม่สอดคล้องกับวิธีที่ฉันคาดว่าจะสามารถให้เหตุผลเกี่ยวกับโปรแกรม ฉันตำหนิความหมายของฉัน แต่ไม่สามารถแก้ไขได้