ยกเว้นความก้าวหน้าในการสุ่มตัวอย่างดูเหมือนว่าสำหรับความต้องการที่เครื่องลาสเวกัสไม่มีข้อผิดพลาดเป็นสิ่งสำคัญดังนั้นจึงไม่มีประโยชน์ที่จะมีการสุ่มในกรณีนี้
สำหรับBPPภาษาตัดสินใจโดยขั้นตอนวิธีการที่เหมาะสมซึ่งทำหน้าที่เกี่ยวกับปัจจัยการผลิตx ∈ { 0 , 1 } nและสตริงแบบสุ่มR ∈ { 0 , 1 } N ( n )เป็นตัวแทนของทางเลือกสุ่มเกณฑ์ศูนย์ข้อผิดพลาดหมายถึง ที่เครื่องลาสเวกัสจะต้องตรวจสอบให้แน่ใจว่าทั้งสองกรณีPr r ( A ยอมรับ ( x , r ) ) ⩾ 2LAx∈{0,1}nr∈{0,1}N(n)ถือ หากเราไม่ได้รับข้อมูลเพิ่มเติมเกี่ยวกับAดังนั้นนี่เป็นปัญหาที่สำคัญของสัญญาพยากรณ์: ให้ oracleA′คำนวณA′(r)=A(x,r)และให้สัญญาว่าA′ให้ผลผลิตหนึ่งaa{0,1}เป็นเวลาอย่างน้อยสองเท่าของอินพุตจำนวนมากเป็นเอาต์พุตตรงข้าม1-a, พิจารณาว่าเอาต์พุตใดเป็นเรื่องธรรมดา
Prr(A accepts (x,r))⩾23orPrr(A accepts (x,r))⩽13
AA′A′(r)=A(x,r)A′a∈{0,1}1−a
แม้ว่าเครื่องลาสเวกัสอาจใช้เทคนิคการสุ่ม แต่ถ้าเราถูกบังคับให้ปฏิบัติต่อในฐานะนักพยากรณ์เราจะเห็นได้ว่ากลยุทธ์เดียวที่มีให้สำหรับเครื่องลาสเวกัสคือการสำรวจแบบสำรวจค่อนข้างละเอียด สตริงสุ่มrเพื่อดูว่ามีคำตอบใดให้บ้าง สามารถมั่นใจได้หากพบมากกว่า2 N ( n )A′rสตริงที่แตกต่าง rซึ่งทั้งหมดก่อให้เกิดผลลัพธ์เดียวกัน; มิฉะนั้นด้วยความน่าจะเป็นที่มีขนาดเล็ก (แต่ไม่ใช่ศูนย์!) มันอาจจะโชคร้ายและได้รับตัวอย่างที่ไม่ใช่ตัวแทนของเอาต์พุตที่เป็นไปได้ ในการรับข้อผิดพลาดเป็นศูนย์จะต้องสุ่มตัวอย่างอย่างน้อย 2 N ( n )2N(n)/3rอินพุต r .2N(n)/3r
เพราะเครื่องที่ลาสเวกัจะต้องตรวจสอบอย่างน้อยส่วนคงที่ของทั้งหมดของสตริงสุ่มไปได้ , asymptotically เราไม่มีดีกว่าถ้าเราdeterministicallyทดสอบทั้งหมดสตริงสุ่มที่เป็นไปได้ เราไม่ได้รับประโยชน์แบบอะซิมโทติคในการจำลองอัลกอริธึมของBPPแบบสุ่มในการตั้งค่าที่ไม่มีข้อผิดพลาดr
หมายเหตุว่าอาร์กิวเมนต์เดียวกันนี้ก่อให้เกิดการแยก oracle ระหว่างBPPและZpp , เช่น มีการพยากรณ์ดังกล่าวว่าZ P P ⫋ B P P
เพราะZppขั้นตอนวิธีการต้องใช้เวลาในการชี้แจงในขณะที่BPPอัลกอริทึมสามารถแก้คำถามเกี่ยวกับ Oracle ในแบบสอบถามเดียวและประสบความสำเร็จกับข้อผิดพลาดที่ถูกผูกไว้ อย่างไรก็ตามมันไม่ได้บอกอะไรคุณมากไปกว่าสิ่งที่คุณสงสัยแล้ว (การจำลองค่าใช้จ่ายอาจเลวร้ายยิ่งกว่าพหุนาม) และไม่ต้องแสดงอาการเชิงเส้นประสาทที่ไม่ดีเท่าการจำลองแบบไร้เดียงสาที่ไร้เดียงสาA
ZPPA⫋BPPA