กลับไปหน้าบทความ

อ่าน 34 นาที

สัญกรณ์บิ๊ก โอ

สัญกรณ์Big O เป็น สัญกรณ์ทางคณิตศาสตร์ ที่อธิบายขนาดโดยประมาณของ ฟังก์ชัน บน โดเมน Big O เป็นสมาชิกของ กลุ่มสัญกรณ์ ที่คิดค้นโดยนักคณิตศาสตร์ชาวเยอรมัน Paul Bachmann [ 1 ] และ...

สัญกรณ์บิ๊กโอ

สัญกรณ์Big Oเป็นสัญกรณ์ทางคณิตศาสตร์ที่อธิบายขนาดโดยประมาณของฟังก์ชันบนโดเมน Big O เป็นสมาชิกของกลุ่มสัญกรณ์ที่คิดค้นโดยนักคณิตศาสตร์ชาวเยอรมันPaul Bachmann [ 1 ]และEdmund Landau [ 2 ]และขยายโดยคนอื่นๆ ซึ่งเรียกรวมกันว่าสัญกรณ์ Bachmann–Landauตัวอักษร O ย่อมาจากOrdnungซึ่งหมาย ถึง ลำดับของการประมาณ

ในวิทยาการคอมพิวเตอร์สัญกรณ์ Big O ใช้ในการจำแนกอัลกอริทึมตามขนาดเวลาการทำงานหรือความต้องการพื้นที่[ a ]ที่เพิ่มขึ้นตามอินพุต[ 3 ]ในทฤษฎีจำนวนเชิงวิเคราะห์ สัญ กรณ์ Big O แสดงขอบเขตของการเติบโตของฟังก์ชันทางคณิตศาสตร์เช่น พจน์เศษเหลือในทฤษฎีบทจำนวนเฉพาะ [ 4 ] ใน การวิเคราะห์ทางคณิตศาสตร์รวมถึงแคลคูลัส สัญกรณ์ Big O กำหนดขอบเขตของข้อผิดพลาดเมื่อตัดทอนอนุกรมกำลังและแสดงคุณภาพของการประมาณค่าฟังก์ชันค่าจริงหรือเชิงซ้อนด้วยฟังก์ชันที่ง่ายกว่า

โดยทั่วไป สัญกรณ์บิ๊กโอ (Big O notation) มักใช้เพื่ออธิบายฟังก์ชันตามอัตราการเติบโตเมื่อตัวแปรมีค่ามาก: ฟังก์ชันต่าง ๆ ที่มี อัตราการเติบโตเชิงเส้น กำกับ (asymptotic growth rate) เท่ากัน อาจแสดงด้วยสัญกรณ์โอเดียวกันได้ ตัวอักษรโอถูกใช้เพราะอัตราการเติบโตของฟังก์ชันเรียกอีกอย่างว่า อันดับของฟังก์ชันการอธิบายฟังก์ชันด้วยสัญกรณ์บิ๊กโอจะให้เพียงขอบเขตบนของอัตราการเติบโตของฟังก์ชัน เท่านั้น

สัญกรณ์ Big O เกี่ยวข้องกับสัญกรณ์อื่นๆ อีกหลายแบบ โดยใช้สัญลักษณ์, , , , , , , และเพื่ออธิบายขอบเขตประเภทอื่นๆ ของอัตราการเติบโต[ 5 ] [ 6 ] [ 7 ] [ 8 ]

Bachmann เสนอสัญกรณ์นี้ในปี พ.ศ. 2337 และ Landau ขยายสัญกรณ์นี้ในปี พ.ศ. 2452 สัญกรณ์ก่อนหน้านี้ได้รับการเสนอโดยPaul du Bois-Reymondในปี พ.ศ. 2413 [ 9 ]

คำจำกัดความอย่างเป็นทางการ

ให้ฟังก์ชันที่ต้องการประมาณค่าเป็น ฟังก์ชันค่า จริงหรือ ค่า เชิงซ้อนที่กำหนดบนโดเมนและให้ฟังก์ชันเปรียบเทียบเป็นฟังก์ชันค่าจริงที่ไม่เป็นลบที่กำหนดบนเซตเดียวกันตัวเลือกทั่วไปสำหรับโดเมน ได้แก่ ช่วงของจำนวนจริงที่มีขอบเขตหรือไม่มีขอบเขต เซตของจำนวนเต็มบวก เซตของจำนวนเชิงซ้อนและคู่ของจำนวนจริง/จำนวนเชิงซ้อน เมื่อเขียนโดเมนอย่างชัดเจนหรือเข้าใจโดยปริยาย เราสามารถเขียนได้ดังนี้

ซึ่งอ่านว่า "มีขนาดใหญ่กว่า" ถ้ามีจำนวนจริงบวกอยู่จำนวนหนึ่งซึ่งเป็นไปตามเงื่อนไขที่ว่า

ถ้า(เช่นgไม่เป็นศูนย์เลย) ตลอดทั้งโดเมนนิยามที่เทียบเท่ากันคือ อัตราส่วนนั้นมีขอบเขตกล่าวคือ มีจำนวนจริงบวกอยู่จำนวนหนึ่งที่ทำให้สำหรับทุก ๆสิ่งเหล่านี้ครอบคลุมการใช้งานทั้งหมดของbigในวิทยาศาสตร์คอมพิวเตอร์และคณิตศาสตร์ รวมถึงการใช้งานในกรณีที่โดเมนเป็นจำนวนจำกัด จำนวนอนันต์ จำนวนจริง จำนวนเชิงซ้อน ตัวแปรเดียว หรือหลายตัวแปร ในการใช้งานส่วนใหญ่ เรามักเลือกฟังก์ชันที่ปรากฏในอาร์กิวเมนต์ของให้มีรูปแบบที่เรียบง่ายที่สุดเท่าที่จะเป็นไปได้ โดยละเว้นปัจจัยคงที่และพจน์ลำดับต่ำกว่า จำนวนนี้เรียกว่าค่าคงที่โดยนัยเพราะโดยปกติแล้วจะไม่ระบุไว้ เมื่อใช้ สัญกรณ์ bigสิ่งสำคัญคือมีค่าจำกัดอยู่ ไม่ใช่ค่าเฉพาะของมัน สิ่งนี้ทำให้การนำเสนออสมการเชิงวิเคราะห์หลายอย่างง่ายขึ้น

สำหรับฟังก์ชันที่กำหนดบนจำนวนจริงบวกหรือจำนวนเต็มบวก คำจำกัดความที่เข้มงวดกว่าและขัดแย้งกันเล็กน้อยยังคงใช้กันทั่วไป[ 3 ] [ 10 ]โดยเฉพาะในวิทยาศาสตร์คอมพิวเตอร์ เมื่อจำกัดเฉพาะฟังก์ชันที่เป็น บวก ในที่สุดสัญกรณ์

หมายความว่าสำหรับจำนวนจริงบางจำนวนในโดเมนในที่นี้ นิพจน์ไม่ได้บ่งชี้ถึงขีดจำกัดแต่หมายถึงแนวคิดที่ว่าความไม่เท่าเทียมกันเป็นจริงสำหรับค่าที่มากพอนิพจน์มักจะถูกละเว้น[ 3 ]

ในทำนองเดียวกัน สำหรับจำนวนจริงสัญลักษณ์

หมายความว่าสำหรับค่าคงที่บางค่าในช่วงนั้นซึ่งก็คือในบริเวณใกล้เคียงเล็กๆ ของ นอกจากนี้ สัญลักษณ์ ยัง หมายความว่านิพจน์ที่ซับซ้อนกว่านี้ก็เป็นไปได้เช่นกัน

แม้จะมีเครื่องหมายเท่ากับ ( = ) ปรากฏอยู่ตามที่เขียนไว้ แต่สำนวนนี้ไม่ได้หมายถึงความเท่าเทียมกันแต่หมายถึงความไม่เท่าเทียมกันระหว่างและ

ในช่วงทศวรรษ 1930 [ 6 ]นักทฤษฎีจำนวนชาวรัสเซียIM Vinogradovได้นำเสนอสัญลักษณ์ซึ่งถูกนำมาใช้มากขึ้นในทฤษฎีจำนวน[ 4 ] [ 11 ] [ 12 ]และสาขาอื่นๆ ของคณิตศาสตร์ เป็นทางเลือกแทนสัญลักษณ์ เรามี

บ่อยครั้งที่มีการใช้สัญลักษณ์ทั้งสองแบบในงานเขียนเดียวกัน

เวอร์ชั่นเซ็ตของบิ๊กโอ

ในวิทยาการคอมพิวเตอร์[ 3 ]เป็นเรื่องปกติที่จะกำหนดbigให้เป็นการกำหนดเซตของฟังก์ชันด้วยเช่นกัน เมื่อระบุฟังก์ชันบวก (หรือไม่ใช่ลบ) แล้ว จะตีความได้ว่าเป็นการแทนเซตของฟังก์ชันทั้งหมดที่ตรงตามเงื่อนไขจากนั้นสามารถเขียนได้เทียบเท่าว่า "ฟังก์ชันอยู่ในเซตของฟังก์ชันทั้งหมดที่มีลำดับไม่เกิน"

ตัวอย่างที่มีโดเมนอนันต์

โดยทั่วไปแล้วสัญลักษณ์นี้จะถูกนำไปใช้กับช่วงอนันต์ของจำนวนจริงและแสดงถึงพฤติกรรมของฟังก์ชันสำหรับค่าn ที่มาก ๆ ในบริบทนี้ ผลกระทบของพจน์ที่เติบโต "เร็วที่สุด" จะทำให้พจน์อื่น ๆ ไม่สำคัญในที่สุด ดังนั้นจึงสามารถใช้กฎการลดรูปต่อไปนี้ได้:

  • ถ้าเป็นผลรวมของหลายพจน์ หากมีพจน์ใดที่มีอัตราการเติบโตสูงสุด ก็สามารถเก็บไว้และตัดพจน์อื่นๆ ทิ้งได้
  • ถ้าเป็นผลคูณของตัวประกอบหลายตัว ค่าคงที่ใดๆ (ตัวประกอบในผลคูณที่ไม่ขึ้นอยู่กับ) สามารถละเว้นได้

ตัวอย่างเช่น ให้และสมมติว่าเราต้องการทำให้ฟังก์ชันนี้ง่ายขึ้น โดยใช้สัญลักษณ์ เพื่ออธิบายอัตราการเติบโตสำหรับค่า ที่มากฟังก์ชันนี้เป็นผลรวมของสามพจน์ ได้แก่, และในบรรดาสามพจน์นี้ พจน์ที่มีอัตราการเติบโตสูงสุดคือพจน์ที่มีเลขชี้กำลังมากที่สุดเมื่อเทียบกับนั่นคือตอนนี้เราสามารถใช้กฎข้อที่สองได้: เป็นผลคูณของและโดยที่ตัวประกอบแรกไม่ขึ้นอยู่กับการละเว้นตัวประกอบนี้ทำให้ได้รูปแบบที่ง่ายขึ้นคือ ดังนั้น เราจึงกล่าวว่าเป็น "บิ๊กโอ" ของในทางคณิตศาสตร์ เราสามารถเขียนสำหรับทุกเราสามารถยืนยันการคำนวณนี้ได้โดยใช้คำนิยามอย่างเป็นทางการ: ให้และเมื่อใช้คำนิยามอย่างเป็นทางการจากข้างต้น ข้อความที่เทียบเท่ากับการขยายความ สำหรับค่าจำนวนจริงบวกที่เหมาะสมบางค่าและสำหรับทุกเพื่อพิสูจน์สิ่งนี้ ให้ดังนั้น สำหรับทุก: ดังนั้น ในขณะที่มันเป็นความจริงเช่นกัน ด้วยเหตุผลเดียวกันว่า แต่ เป็นการประมาณค่าฟังก์ชันที่ไม่แม่นยำนัก ในทางกลับกัน ข้อความดังกล่าวเป็นเท็จ เพราะคำดังกล่าวทำให้ ไม่มีขอบเขตจำกัด

เมื่อฟังก์ชันอธิบายจำนวนขั้นตอนที่จำเป็นในอัลกอริทึมที่มีอินพุตนิพจน์เช่น โดยที่โดเมนโดยนัยคือเซตของจำนวนเต็มบวก อาจถูกตีความได้ว่าอัลกอริทึมนั้นมีความซับซ้อนของเวลา อย่างมากที่สุดอยู่ในลำดับ

ตัวอย่างที่มีโดเมนจำกัด

นอกจากนี้ ยังสามารถใช้ Big O เพื่ออธิบายพจน์ความคลาดเคลื่อนในการประมาณค่าฟังก์ชันทางคณิตศาสตร์ในช่วงจำกัดได้อีกด้วย พจน์ที่มีนัยสำคัญที่สุดจะถูกเขียนออกมาอย่างชัดเจน จากนั้นพจน์ที่มีนัยสำคัญน้อยที่สุดจะถูกสรุปไว้ในพจน์ Big O เดียว ตัวอย่างเช่น พิจารณาอนุกรมเลขชี้กำลังและนิพจน์สองแบบที่ใช้ได้เมื่อมีค่าเล็ก: นิพจน์ตรงกลาง(บรรทัดที่มี" " )หมายความว่าค่าสัมบูรณ์ของความคลาดเคลื่อน มีค่าอย่างมากที่สุดเท่ากับค่าคงที่บางค่าคูณเมื่อมีค่าเล็ก นี่เป็นตัวอย่างของการใช้ทฤษฎีบทของเทย์เลอร์

พฤติกรรมของฟังก์ชันที่กำหนดอาจแตกต่างกันอย่างมากในโดเมนจำกัดเมื่อเทียบกับโดเมนอนันต์ ตัวอย่างเช่น ในขณะที่

ตัวอย่างหลายตัวแปร

ในที่นี้เรามี ฟังก์ชัน ตัวแปรเชิงซ้อนของตัวแปรสองตัว โดยทั่วไปแล้ว ฟังก์ชันที่มีขอบเขตใดๆ ก็ตามจะเป็นฟังก์ชันที่มีขอบเขต

ตัวอย่างสุดท้ายแสดงให้เห็นถึงการผสมผสานระหว่างโดเมนจำกัดและโดเมนอนันต์บนตัวแปรต่างๆ

ในตัวอย่างทั้งหมดนี้ ขอบเขตจะเป็นค่าเดียวกันในตัวแปรทั้งสอง บางครั้งในนิพจน์หลายตัวแปร ตัวแปรหนึ่งอาจมีความสำคัญมากกว่าตัวแปรอื่น และเราอาจแสดงว่าค่าคงที่โดยนัยขึ้นอยู่กับตัวแปรหนึ่งตัวหรือมากกว่านั้นโดยใช้ตัวห้อยกับสัญลักษณ์ O หรือสัญลักษณ์อื่น ตัวอย่างเช่น พิจารณานิพจน์ต่อไปนี้

นี่หมายความว่าสำหรับจำนวนจริงแต่ละจำนวนจะมีค่าคงที่ซึ่งขึ้นอยู่กับดังนั้นสำหรับทุกค่า ข้อความเฉพาะนี้ได้มาจาก ทฤษฎีบททวิ นาม ทั่วไป

อีกตัวอย่างหนึ่งที่พบได้ทั่วไปในทฤษฎีอนุกรมเทย์เลอร์คือ โดยค่าคงที่ที่แฝงอยู่จะขึ้นอยู่กับขนาดของโดเมน

หลักการใช้ตัวห้อยใช้กับสัญลักษณ์อื่นๆ ทั้งหมดในหน้านี้

คุณสมบัติ

ผลิตภัณฑ์

ผลรวม

ถ้าเช่นนั้น... จึงสรุปได้ว่า ถ้าเช่นนั้น...

การคูณด้วยค่าคงที่

ให้kเป็นค่าคงที่ที่ไม่เป็นศูนย์ ดังนั้น . กล่าวอีกนัยหนึ่ง ถ้าแล้ว

คุณสมบัติการถ่ายทอด

ถ้าเช่นนั้น ...

ถ้าฟังก์ชันของจำนวนเต็มบวก สามารถเขียนได้ในรูปผลรวมจำกัดของฟังก์ชันอื่น ๆ ฟังก์ชันที่เติบโตเร็วที่สุดจะเป็นตัวกำหนดลำดับของฟังก์ชันนั้นตัวอย่างเช่น

กฎทั่วไปบางประการเกี่ยวกับการเติบโตไปสู่อนันต์ ; คุณสมบัติข้อที่ 2 และ 3 ด้านล่างสามารถพิสูจน์ได้อย่างเคร่งครัดโดยใช้กฎของโลปิตาล :

มหาอำนาจครอบงำมหาอำนาจเล็ก

สำหรับแล้ว เช่นนั้น

เลขยกกำลังมีอิทธิพลเหนือลอการิทึม

สำหรับค่าบวกใดๆ ไม่ว่าจะมีขนาดใหญ่หรือ เล็กเพียง ใด ในที่นี้ ค่าคงที่โดยนัยจะขึ้นอยู่กับทั้งและ

เลขยกกำลังมีอิทธิพลเหนือกว่าเลขยกกำลัง

สำหรับทุกสิ่งที่เป็นบวก ไม่ว่าจะใหญ่หรือเล็กแค่ไหน ก็ตาม

ฟังก์ชันที่เติบโตเร็วกว่าสำหรับค่าใดๆเรียกว่าซูเปอร์โพลินอมิอัล ส่วนฟังก์ชันที่เติบโตช้ากว่าฟังก์ชันเลขชี้กำลังใดๆ ในรูปแบบที่มีเรียกว่าซับเลขชี้กำลัง อัลกอริทึมบางอย่างอาจใช้เวลาที่ทั้งเป็นซูเปอร์โพลินอมิอัลและซับเลขชี้กำลังพร้อมกัน ตัวอย่างเช่น อัลกอริทึมที่เร็วที่สุดเท่า ที่ ทราบสำหรับการแยกตัวประกอบจำนวนเต็มและฟังก์ชัน

เราอาจละเว้นเลขยกกำลังใดๆภายในลอการิทึมได้ สำหรับค่าบวกใดๆสัญลักษณ์มีความหมายเหมือนกับเนื่องจากในทำนองเดียวกัน ลอการิทึมที่มีฐานคงที่ต่างกันจะเทียบเท่ากันในแง่ของสัญลักษณ์บิ๊กโอ ในทางกลับกัน เลขยกกำลังที่มีฐานต่างกันจะไม่เรียงลำดับเดียวกัน ตัวอย่างเช่นและจะไม่เรียงลำดับเดียวกัน

การแสดงออกที่ซับซ้อนยิ่งขึ้น

ในบริบทการใช้งานที่ซับซ้อนกว่านั้น คำว่า "คงที่" สามารถปรากฏในตำแหน่งต่างๆ ในสมการได้ แม้กระทั่งหลายครั้งในแต่ละด้าน ตัวอย่างเช่น ข้อความต่อไปนี้เป็นจริงสำหรับจำนวนเต็มบวก: ความหมายของข้อความดังกล่าวมีดังนี้: สำหรับ ฟังก์ชัน ใดๆที่สอดคล้องกับเงื่อนไขแต่ละข้อทางด้านซ้าย จะมี ฟังก์ชัน บางฟังก์ชันที่สอดคล้องกับเงื่อนไขแต่ละข้อทางด้านขวา ซึ่งเมื่อแทนฟังก์ชันทั้งหมดเหล่านี้ลงในสมการแล้วจะทำให้ทั้งสองข้างเท่ากัน ตัวอย่างเช่น สมการที่สามข้างต้นหมายความว่า: "สำหรับฟังก์ชันใดๆ ที่สอดคล้องกับเงื่อนไขจะมีฟังก์ชันบางฟังก์ชันที่ทำให้" ค่าคงที่โดยนัยในข้อความ " " อาจขึ้นอยู่กับค่าคงที่โดยนัยในนิพจน์ " "

ตัวอย่างเพิ่มเติม:

≫ ของ Vinogradov และ Ω ขนาดใหญ่ของ Knuth

เมื่อฟังก์ชันทั้งสองเป็นบวก Vinogradov [ 6 ]ได้แนะนำสัญลักษณ์ซึ่งมีความหมายเหมือนกับสัญลักษณ์ทั้งสองของ Vinogradov มีความสมมาตรทางสายตา เช่นเดียวกับฟังก์ชันบวกเรา มี

ในปี พ.ศ. 2519 Donald Knuth [ 8 ] ได้กำหนด

ซึ่งมีความหมายเหมือนกับของวินอกราดอฟ

อย่างไรก็ตาม ก่อนหน้านี้ Hardy และ Littlewood [ 7 ]ได้กำหนดนิยามที่แตกต่างออกไปและสัญลักษณ์ของพวกเขายังคงใช้กันอย่างแพร่หลายในทฤษฎีจำนวนเชิงวิเคราะห์ในปัจจุบัน[ 13 ] [ 11 ] [ 12 ] Knuth ได้ให้เหตุผลในการใช้สัญลักษณ์เพื่ออธิบายคุณสมบัติที่แข็งแกร่งกว่า[ 8 ]ว่า "สำหรับการใช้งานทั้งหมดที่ฉันได้เห็นมาจนถึงตอนนี้ในวิทยาศาสตร์คอมพิวเตอร์ ข้อกำหนดที่แข็งแกร่งกว่า ... นั้นเหมาะสมกว่ามาก" Knuth ยังเขียนเพิ่มเติมว่า "ถึงแม้ว่าฉันจะเปลี่ยนนิยามของ Hardy และ Littlewood ของ แต่ฉันรู้สึกว่ามีเหตุผลที่จะทำเช่นนั้น เพราะนิยามของพวกเขาไม่ได้ถูกนำมาใช้กันอย่างแพร่หลาย และเพราะมีวิธีอื่นที่จะพูดในสิ่งที่พวกเขาต้องการจะพูดในกรณีที่ค่อนข้างหายากเมื่อนิยามของพวกเขาใช้ได้" [ 8 ]สัญลักษณ์ขนาดใหญ่ของ Knuth ยังคงใช้กันอย่างแพร่หลายในวิทยาศาสตร์คอมพิวเตอร์และคณิตศาสตร์เชิงการจัดเรียงในปัจจุบัน

≍ ของฮาร์ดี้และ Θ ตัวใหญ่ของคนูธ

ในทฤษฎีจำนวนเชิงวิเคราะห์[ 12 ]สัญลักษณ์นี้หมายถึงทั้ง และสัญลักษณ์นี้เดิมทีเป็นของ Hardy [ 5 ]สัญลักษณ์ของ Knuth สำหรับแนวคิดเดียวกันคือ[ 8 ] โดยคร่าวๆ ข้อความเหล่านี้ยืนยันว่าและมีลำดับเดียวกันสัญลักษณ์เหล่านี้หมายความว่ามีค่าคงที่บวก เพื่อให้ สำหรับทุกในโดเมนร่วมของ เมื่อฟังก์ชันถูกกำหนดบนจำนวนเต็มบวกหรือจำนวนจริงบวก เช่นเดียวกับบิ๊กโอ ผู้เขียนมักตีความข้อความ และว่าเป็นจริงสำหรับทุกค่า ที่มีขนาดใหญ่พอสมควรนั่นคือ สำหรับทุกค่าที่เกินจุดบางจุดบางครั้งสิ่งนี้จะระบุโดยการเพิ่มต่อท้ายข้อความ ตัวอย่างเช่น เป็นจริงสำหรับโดเมนแต่เป็นเท็จถ้าโดเมนเป็นจำนวนเต็มบวกทั้งหมด เนื่องจากฟังก์ชันเป็นศูนย์ที่

ตัวอย่างเพิ่มเติม

สัญลักษณ์

หมายความว่ามีค่าคงที่บวกค่าหนึ่งที่ทำให้ สำหรับทุกค่าในทางตรงกันข้าม หมายความว่ามีค่าคงที่บวกค่าหนึ่ง ที่ทำให้สำหรับทุกค่าและ หมายความว่ามีค่าคงที่บวกหลายค่าที่ ทำให้สำหรับทุกค่า

สำหรับโดเมนใดๆแต่ละ ข้อความจะเป็นสำหรับทุกสิ่งในนั้น

ลำดับของฟังก์ชันทั่วไป

ต่อไปนี้คือรายการของประเภทฟังก์ชันที่มักพบเห็นได้ทั่วไปเมื่อวิเคราะห์เวลาการทำงานของอัลกอริทึม ในแต่ละกรณีcเป็นค่าคงที่บวก และnเพิ่มขึ้นอย่างไม่มีขอบเขต โดยทั่วไปแล้วฟังก์ชันที่เติบโตช้ากว่าจะถูกแสดงไว้ก่อน

สัญกรณ์ชื่อตัวอย่าง
คงที่การหาค่ามัธยฐานสำหรับอาร์เรย์ตัวเลขที่เรียงลำดับแล้ว การคำนวณ การ ใช้ ตารางค้นหาขนาดคงที่
ฟังก์ชัน Ackermann ผกผันความซับซ้อนเฉลี่ยต่อการดำเนินการสำหรับโครงสร้างข้อมูลเซตที่ไม่เกี่ยวข้องกัน
ลอการิทึมคู่จำนวนครั้งเฉลี่ยของการเปรียบเทียบที่ใช้ในการค้นหารายการโดยใช้การค้นหาแบบแทรกสอดในอาร์เรย์ที่เรียงลำดับแล้วซึ่งกระจายอย่างสม่ำเสมอ
ลอการิทึมการค้นหารายการในอาร์เรย์ที่เรียงลำดับแล้วโดยใช้การค้นหาแบบไบนารี หรือ ต้นไม้ค้นหาแบบสมดุลตลอดจนการดำเนินการทั้งหมดในฮีปแบบไบโนเมียล
โพลีลอการิทมิกการเรียงลำดับเมทริกซ์แบบลูกโซ่สามารถแก้ไขได้ในเวลาแบบพหุลอการิทึมบนเครื่องเข้าถึงแบบสุ่มขนาน
กำลังเศษส่วนการค้นหาในต้นไม้ kd การทดสอบความเป็นจำนวนเฉพาะแบบง่าย โดยการหารทดลอง ( )
เชิงเส้นการค้นหารายการในรายการที่ไม่เรียงลำดับหรือในอาร์เรย์ที่ไม่เรียงลำดับ การบวก จำนวนเต็ม nบิตสองจำนวนโดยใช้การทดแบบระลอกคลื่น
n log-star nดำเนินการสร้างสามเหลี่ยมของรูปหลายเหลี่ยมอย่างง่ายโดยใช้อัลกอริทึมของ Seidel [ 14 ]โดยที่
แบบลิเนียร์ลิเธียม , แบบลอการิธึมลิเธียม, แบบกึ่งลิเธียม หรือ"การแปลงฟูริเยร์แบบเร็ว (Fast Fourier Transform) ; การเรียงลำดับแบบเปรียบเทียบ ที่เร็วที่สุดเท่าที่จะเป็นไปได้ ; การเรียงลำดับ แบบฮีปซอร์ตและการเรียงลำดับแบบผสาน (Merge Sort)
กำลังสองการคูณเลขสองหลักด้วยวิธีการคูณแบบพื้นฐานในตำราเรียน ; อัลกอริทึมการเรียงลำดับแบบง่ายๆ เช่น บับเบิลซอร์ต (bubble sort) , ซีเลคชันซอ ร์ต (selection sort ) และ อินเสิร์ชัน ซอร์ต (insertion sort ); ขอบเขต (กรณีที่เลวร้ายที่สุด) ของอัลกอริทึมการเรียงลำดับที่เร็วกว่าบางอย่าง เช่นควิกซอร์ต (quicksort) , เชลล์ซอร์ต (Shellsort)และทรีซอร์ต (tree sort)
พหุนามหรือพีชคณิตการวิเคราะห์ ไวยากรณ์แบบเชื่อมต่อต้นไม้ ; การจับคู่สูงสุดสำหรับกราฟสองส่วน ; การหาดีเทอร์มิแนนต์ด้วยการแยกส่วน LU
สัญกรณ์ Lหรือเลขชี้กำลังย่อยการแยกตัวประกอบของจำนวนโดยใช้ตะแกรงกำลังสองหรือตะแกรงสนามจำนวน
เลขชี้กำลังการหาคำตอบ (ที่แน่นอน) ของปัญหาพนักงานขายเดินทางโดยใช้การเขียนโปรแกรมเชิงพลวัตการตรวจสอบว่าข้อความตรรกะสองข้อความนั้นเทียบเท่ากันหรือไม่โดยใช้การค้นหาแบบบรูทฟอร์ซ
แฟกทอเรียลการแก้ปัญหาพนักงานขายเดินทางโดยใช้การค้นหาแบบบรูทฟอร์ซ การสร้างการเรียงสับเปลี่ยนแบบไม่จำกัดทั้งหมด ของ เซต ลำดับบางส่วน การหาดีเทอร์มิแนนต์ด้วยการกระจายลาปลาสการแจงนับพาร์ติชันทั้งหมดของเซต

บางครั้ง ข้อความดังกล่าวจะถูกลดทอนลงเพื่อให้ได้สูตรที่ง่ายกว่าสำหรับความซับซ้อนเชิงอะซิมโทติก ในตัวอย่างเหล่านี้จำนวนมาก เวลาในการทำงานจริงคือซึ่งสื่อถึงความแม่นยำที่มากกว่า

สัญกรณ์ลิตเติลโอ

สำหรับฟังก์ชันค่าจริงหรือค่าเชิงซ้อนของตัวแปรจริง ที่มีสำหรับค่าที่มากพอ จะเขียนได้ว่า [ 2 ]

ถ้า นั่นคือ สำหรับค่าคงที่บวกε ทุกค่า จะมีค่าคงที่อยู่ค่าหนึ่งเช่นนั้น

โดยสัญชาตญาณแล้ว นี่หมายความว่าเติบโตเร็วกว่ามากหรือกล่าวอีกนัยหนึ่งคือเติบโตช้ากว่ามาก ตัวอย่างเช่น มี

และ     ทั้งสองอย่างเช่น

เมื่อเราสนใจพฤติกรรมของฟังก์ชันสำหรับค่าขนาดใหญ่ของ n การใช้สัญลักษณ์ little-o จะให้ข้อความที่ชัดเจนกว่าการใช้สัญลักษณ์ big-o ที่สอดคล้องกัน กล่าวคือ ทุกฟังก์ชันที่เป็น little-o ของ n ก็จะเป็น big-o ของ n ในช่วงใดช่วงหนึ่งแต่ไม่ใช่ทุกฟังก์ชันที่เป็น big-o ของ n จะเป็น little-o ของn ตัวอย่างเช่นแต่สำหรับn > 0

Little-o รองรับการดำเนินการทางคณิตศาสตร์หลายอย่าง ตัวอย่างเช่น

ถ้าเป็นค่าคงที่ที่ไม่ใช่ศูนย์แล้วและ
ถ้าเช่นนั้น
ถ้าเช่นนั้น

นอกจากนี้ยังสอดคล้องกับ ความสัมพันธ์ แบบถ่ายทอดได้ อีกด้วย :

ถ้าเช่นนั้น

Little-o ยังสามารถขยายไปสู่กรณีจำกัดได้อีกด้วย: [ 2 ] ถ้า กล่าวอีกนัยหนึ่ง คือ สำหรับบางค่าที่ มี

คำจำกัดความนี้มีประโยชน์อย่างยิ่งในการคำนวณลิมิตโดยใช้ชุดอนุกรมเทย์เลอร์ตัวอย่างเช่น:

, ดังนั้น

สัญกรณ์เชิงอะซิมโทติก

ความสัมพันธ์ที่เกี่ยวข้องกับ little-o คือสัญกรณ์ เชิงอะซิม โทติก สำหรับฟังก์ชันค่าจริงนิพจน์นี้ หมายถึง เราสามารถเชื่อมโยงสิ่งนี้กับ little-o ได้โดยสังเกตว่า ก็เทียบเท่ากับ เช่น กัน ในที่นี้หมายถึงฟังก์ชันที่เข้าใกล้ศูนย์เมื่อ เราอ่านสิ่งนี้ว่า " เป็นเชิงอะซิมโทติกของ " สำหรับฟังก์ชันที่ไม่เป็นศูนย์บนโดเมนเดียวกัน (จำกัดหรืออนันต์) ก่อให้เกิด ความ สัมพันธ์สมมูล

หนึ่งในทฤษฎีบทที่มีชื่อเสียงที่สุดที่ใช้สัญลักษณ์นี้ คือสูตรของสเตอร์ลิง ในทฤษฎีจำนวน ทฤษฎีบทจำนวนเฉพาะ ที่มีชื่อเสียง กล่าวว่า โดยที่คือจำนวนของจำนวนเฉพาะที่มีค่าไม่เกินและ คือลอการิทึม ธรรมชาติของ

เช่นเดียวกับ little-o ก็มีเวอร์ชันที่มีขอบเขตจำกัด (แบบสองด้านหรือแบบด้านเดียว ) ด้วยเช่นกัน ตัวอย่างเช่น

ตัวอย่างเพิ่มเติม: ค่าเชิงเส้นกำกับสุดท้ายเป็นคุณสมบัติพื้นฐานของ ฟังก์ชันซีตาของรีมันน์

𝜔 เล็กๆ ของ Knuth

สำหรับฟังก์ชันที่มีค่าเป็นบวกและเป็นจริงในที่สุดสัญลักษณ์นี้ หมายถึง กล่าวอีกนัยหนึ่งคือโดยคร่าวๆ แล้วหมายความว่าเติบโต เร็วกว่า มาก

สัญกรณ์ Ω ของ Hardy–Littlewood

ในปี พ.ศ. 2457 GH HardyและJE Littlewoodได้นำเสนอสัญลักษณ์ใหม่[ 7 ]ซึ่งกำหนดไว้ดังนี้:

ราวกับว่า

ดังนั้น จึงเป็นการปฏิเสธของ

เมื่อปี พ.ศ. 2459 ผู้เขียนกลุ่มเดียวกันนี้ได้แนะนำสัญลักษณ์ใหม่สองตัวและกำหนดความหมายดังนี้: [ 15 ]

ราวกับว่า
ราวกับว่า

สัญลักษณ์เหล่านี้ถูกใช้โดยE. Landauโดยมีความหมายเดียวกันในปี พ.ศ. 2467 [ 16 ]อย่างไรก็ตาม ผู้เขียนที่ตามหลัง Landau ใช้สัญลักษณ์ที่แตกต่างกันสำหรับคำจำกัดความเดียวกัน: [ 11 ]สัญลักษณ์ดังกล่าวถูกแทนที่ด้วยสัญลักษณ์ปัจจุบันที่มีคำจำกัดความเดียวกัน และกลายเป็น

สัญลักษณ์ทั้งสามนี้รวมถึง(ซึ่งหมายความว่าและเป็นไปตามเงื่อนไขทั้งคู่) ปัจจุบันถูกนำมาใช้ในทฤษฎีจำนวนเชิงวิเคราะห์[ 11 ] [ 12 ]

ตัวอย่างง่ายๆ

เรามี

เช่น

และแม่นยำยิ่งขึ้นไปอีก

เช่น

โดยที่หมายความว่าด้านซ้ายเป็นทั้ง และ

เรามี

เช่น

และแม่นยำยิ่งขึ้นไปอีก

เช่น

อย่างไรก็ตาม

เช่น

กลุ่มสัญลักษณ์ Bachmann–Landau

เพื่อทำความเข้าใจนิยามอย่างเป็นทางการ โปรดดู รายการสัญลักษณ์ตรรกศาสตร์ที่ใช้ในคณิตศาสตร์

สัญกรณ์ ชื่อ[ 8 ]คำอธิบาย คำจำกัดความอย่างเป็นทางการ คำจำกัดความโดยย่อ

[ 4 ] [ 5 ] [ 8 ] [ 7 ] [ 17 ] [ 18 ]

หรือ

(สัญกรณ์ของวินอกราดอฟ)

บิ๊กโอ; บิ๊กโอ; บิ๊กโอไมครอน[ 8 ] [ b ]มีค่าสูงสุดจำกัดโดยg (โดยมีค่าคงที่ประกอบ)
โอเล็ก โอเล็ก โอเล็ก โอเล็ก fถูกครอบงำโดยgในเชิงอะซิมโทติก (สำหรับค่าคงที่ใดๆ)
โอเมกาใหญ่ในทฤษฎีจำนวน (ฮาร์ดี้-ลิตเติลวูด) ไม่ได้ถูกครอบงำโดยgในเชิงอะซิมโทติก
โอเมก้าพลัส (ฮาร์ดี้-ลิตเติลวูด) ไม่ได้ถูกครอบงำโดยgในเชิงอะซิมโทติก
โอเมก้าลบ (ฮาร์ดี้-ลิตเติลวูด) ไม่ได้ถูกครอบงำโดยgในเชิงอะซิมโทติก
โอเมก้าพลัสและลบ ทั้ง nor ไม่ได้ถูกครอบงำโดยgในเชิงอะซิมโทติก และ
(สัญกรณ์ของฮาร์ดี้) หรือ(สัญกรณ์ของคนูธ) อยู่ในลำดับเดียวกันกับ (ฮาร์ดี้); บิ๊กเธต้า (คนุธ) fถูกจำกัดโดยgทั้งด้านบน (ด้วยตัวประกอบคงที่) และด้านล่าง (ด้วยตัวประกอบคงที่) และ
เนื่องจาก โดยที่มีค่าจำกัด

หรือ

ความสมมูลเชิงอะซิมโทติก fเท่ากับg ในเชิงอะซิมโทติก(ในกรณีนี้)
(สัญกรณ์ของ Knuth) หรือ

(สัญกรณ์ของวินอกราดอฟ)

โอเมก้าตัวใหญ่ในทฤษฎีความซับซ้อน (Knuth) fมีขอบเขตล่างโดยgโดยมีค่าคงที่ประกอบอยู่ด้วย
เช่น,

ซึ่งอาจมีค่าจำกัดหรือ

โอเมก้าขนาดเล็ก; โอเมก้าน้อย fครอบงำgในเชิงอะซิมโทติก (สำหรับ)

นิยามของลิมิตนั้นตั้งอยู่บนสมมติฐานว่า ในบริเวณใกล้เคียงกับลิมิต เมื่อลิมิตเป็นหมายความว่า สำหรับค่า ที่ มากพอ

วิทยาศาสตร์คอมพิวเตอร์และคณิตศาสตร์เชิงการจัดเรียงใช้สัญลักษณ์โอ เมกาใหญ่, โอเมกาใหญ่, โอเมกา เล็ก, โอเมกาเล็ก และโอเมกาใหญ่ของ Knuth [ 3 ] ทฤษฎีจำนวนเชิงวิเคราะห์มักใช้สัญลักษณ์โอเมกาใหญ่, โอเมกาเล็ก , โอเมกาใหญ่ของ Hardy , โอเมกาใหญ่ของ Hardy–Littlewood (มีหรือไม่มีตัวห้อย +, − หรือ ±), สัญลักษณ์ของ Vinogradov และสัญลักษณ์อื่นๆ [ 11 ] [ 4 ] [ 12 ] สัญลักษณ์ โอเมกาเล็กไม่ค่อยได้ใช้ในการวิเคราะห์หรือในทฤษฎีจำนวน [ 19 ]

คุณภาพของการประมาณค่าโดยใช้สัญลักษณ์ที่แตกต่างกัน

โดยทั่วไป โดยเฉพาะในวิทยาศาสตร์คอมพิวเตอร์สัญกรณ์ขนาดใหญ่มักจะถูกใช้ในลักษณะที่แตกต่างกันเล็กน้อยเพื่ออธิบาย ขอบเขต ที่แน่นหนา แบบเชิงเส้นกำกับ โดยการใช้สัญกรณ์ Theta ขนาดใหญ่อาจเหมาะสมกว่าในบริบทที่กำหนด[ 20 ] ตัวอย่างเช่น เมื่อพิจารณาฟังก์ชัน เงื่อนไขต่อไปนี้โดยทั่วไปยอมรับได้ แต่ขอบเขตที่แน่นกว่า (เช่น ตัวเลข 2, 3 และ 4 ด้านล่าง) มักจะได้รับความนิยมมากกว่าขอบเขตที่หลวมกว่า (เช่น ตัวเลข 1 ด้านล่าง)

  1. เช่น.

แม้ว่าข้อความทั้งสามข้อจะเป็นความจริง แต่แต่ละข้อก็มีข้อมูลมากขึ้นเรื่อยๆ อย่างไรก็ตาม ในบางสาขา การใช้สัญลักษณ์ O ขนาดใหญ่ (หมายเลข 2 ในรายการด้านบน) จะถูกใช้บ่อยกว่าการใช้สัญลักษณ์ Theta ขนาดใหญ่ (รายการหมายเลข 3 ในรายการด้านบน) ตัวอย่างเช่น หากแทนเวลาในการทำงานของอัลกอริทึมที่พัฒนาขึ้นใหม่สำหรับขนาดอินพุตผู้คิดค้นและผู้ใช้อัลกอริทึมอาจมีแนวโน้มที่จะกำหนดขอบเขตบนของเวลาที่จะใช้ในการทำงานโดยไม่ต้องระบุขอบเขตล่างหรือพฤติกรรมเชิงอะซิมโทติกอย่างชัดเจน

ส่วนขยายของสัญกรณ์ Bachmann–Landau

สัญกรณ์อีกแบบหนึ่งที่บางครั้งใช้ในวิทยาศาสตร์คอมพิวเตอร์คือ(อ่านว่าsoft-O ) ซึ่งซ่อนปัจจัยโพลีลอการิทึม มีคำจำกัดความสองแบบที่ใช้กันอยู่: ผู้เขียนบางคนใช้เป็นตัวย่อสำหรับสำหรับบางค่าในขณะที่คนอื่นใช้เป็นตัวย่อสำหรับ [ 21 ] เมื่อ เป็นพหุนามในจะไม่มีความแตกต่างกัน อย่างไรก็ตาม คำจำกัดความแบบหลังอนุญาตให้กล่าวได้ว่า เช่นในขณะที่คำจำกัดความแบบแรกอนุญาตให้สำหรับค่าคงที่ใดๆผู้เขียนบางคนเขียนO *เพื่อจุดประสงค์เดียวกันกับคำจำกัดความแบบหลัง[ 22 ]โดยพื้นฐานแล้ว มันเป็นเวอร์ชันที่ไม่แม่นยำน้อยกว่าของ สัญกรณ์ O ขนาดใหญ่ โดยไม่สนใจปัจจัยลอการิทึมในอัตราการเติบโตของฟังก์ชัน เนื่องจาก สำหรับค่าคงที่ใดๆและใดๆ ปัจจัยลอการิทึมมีความสำคัญน้อยกว่ากำลังของและยิ่งไม่สำคัญเมื่อเทียบกับเลขชี้กำลัง

นอกจากนี้สัญกรณ์Lถูกกำหนดดังนี้

สะดวกสำหรับฟังก์ชันที่อยู่ระหว่างพหุนามและเลขชี้กำลังในแง่ของ

การขยายความไปสู่ฟังก์ชันที่รับค่าในปริภูมิเวกเตอร์ที่มีบรรทัดฐาน ใดๆ นั้น ทำได้ง่าย (โดยการแทนที่ค่าสัมบูรณ์ด้วยบรรทัดฐาน) โดยที่และไม่จำเป็นต้องรับค่าในปริภูมิเดียวกัน การขยายความไปสู่ฟังก์ชันที่รับค่าในกลุ่มโทโพโลยี ใดๆ ก็เป็นไปได้เช่นกัน กระบวนการ "จำกัด" ยังสามารถขยายความได้โดยการแนะนำฐานตัวกรอง แบบใดก็ได้ เช่น ไปยังเน็ต แบบมีทิศทาง และสัญลักษณ์สามารถใช้เพื่อกำหนดอนุพันธ์และความสามารถในการหาอนุพันธ์ในปริภูมิทั่วไป และยังรวมถึงความสมมูล (เชิงอะซิมโทติก) ของฟังก์ชันด้วย

ซึ่งเป็นความสัมพันธ์สมมูลและเป็นแนวคิดที่เข้มงวดกว่าความสัมพันธ์ " คือ" จากข้างต้น (มันจะลดรูปเหลือเพียงถ้าและเป็นฟังก์ชันค่าจริงบวก) ตัวอย่างเช่นคือ แต่

ประวัติศาสตร์

ในปี พ.ศ. 2413 Paul du Bois-Reymond [ 9 ] ได้กำหนด, และ ไว้ว่าหมายถึง ตามลำดับ สิ่งเหล่านี้ไม่ได้ถูกนำมาใช้กันอย่างแพร่หลายและไม่ได้ใช้ในปัจจุบัน ข้อแรกและข้อที่สามมีความสมมาตร: หมายถึงเหมือนกับ ต่อมา Landau ได้นำมาใช้โดยมีคำจำกัดความที่แคบกว่าว่าลิมิตของเท่ากับ 1

สัญลักษณ์ O ถูกนำมาใช้ครั้งแรกโดยนักทฤษฎีจำนวนPaul Bachmannในปี 1894 ในเล่มที่สองของหนังสือAnalytische Zahlentheorie (" ทฤษฎีจำนวนเชิงวิเคราะห์ ") [ 1 ]นักทฤษฎีจำนวนEdmund Landauได้นำสัญลักษณ์นี้มาใช้ และด้วยเหตุนี้จึงได้รับแรงบันดาลใจให้แนะนำสัญลักษณ์ o ในปี 1909 [ 2 ]ดังนั้นทั้งสองจึงเรียกว่าสัญลักษณ์ Landau สัญลักษณ์เหล่านี้ถูกนำมาใช้ในคณิตศาสตร์ประยุกต์ในช่วงทศวรรษ 1950 สำหรับการวิเคราะห์เชิงอะซิมโทติก[ 23 ] สัญลักษณ์(ในความหมายว่า "ไม่ใช่o เล็ก ๆ ของ") ถูกนำมาใช้ในปี 1914 โดย Hardy และ Littlewood [ 7 ] Hardy และ Littlewood ยังได้แนะนำ สัญลักษณ์ซ้ายและขวา (ปัจจุบันมักใช้สัญลักษณ์ ) ในปี 1916 [ 15 ] สัญลักษณ์นี้ถูกใช้กันอย่างแพร่หลายในทฤษฎีจำนวนตั้งแต่ทศวรรษ 1950 [ 13 ]

ฮาร์ดี้แนะนำสัญลักษณ์และสนับสนุนสัญลักษณ์ของบอยส์-เรย์มอนด์(รวมถึงสัญลักษณ์อื่นๆ ที่กล่าวถึงไปแล้ว) ในบทความปี 1910 ของเขาเรื่อง "ลำดับแห่งอนันต์" [ 5 ]แต่ใช้สัญลักษณ์เหล่านี้เพียงในบทความ 3 ฉบับ (1910–1913) ในบทความและหนังสือที่เหลืออีกเกือบ 400 ฉบับ เขาใช้สัญลักษณ์แลนเดา O และ o อย่างสม่ำเสมอ[ 24 ] สัญลักษณ์ของฮาร์ดี้และไม่ได้ถูกนำมาใช้อีกต่อไป

สัญลักษณ์แม้ว่าจะเคยถูกใช้มาก่อนด้วยความหมายที่แตกต่างกัน[ 9 ]ได้รับการกำหนดความหมายสมัยใหม่โดย Landau ในปี พ.ศ. 2452 [ 2 ]และโดย Hardy ในปี พ.ศ. 2453 [ 5 ]ในหน้าเดียวกัน Hardy ได้กำหนดสัญลักษณ์โดยที่หมายความว่าทั้งและเป็นไปตามเงื่อนไข สัญลักษณ์นี้ยังคงใช้ในทฤษฎีจำนวนเชิงวิเคราะห์[ 25 ] [ 12 ] Hardy ยังเสนอสัญลักษณ์โดยที่หมายความว่าสำหรับค่าคงที่บางค่า(ซึ่งสอดคล้องกับสัญลักษณ์ของ Bois-Reymond )

ในช่วงทศวรรษ 1930 Vinogradov [ 6 ]ได้ทำให้สัญลักษณ์ และ เป็นที่นิยม ซึ่งทั้งสองสัญลักษณ์มีความหมายว่า สัญลักษณ์นี้กลายเป็นมาตรฐานในทฤษฎีจำนวนเชิงวิเคราะห์[ 4 ]

ในช่วงทศวรรษ 1970 โอขนาดใหญ่ได้รับความนิยมในวิทยาศาสตร์คอมพิวเตอร์โดยDonald Knuthซึ่งเสนอสัญกรณ์ที่แตกต่างกันสำหรับ Hardy และเสนอคำจำกัดความที่แตกต่างกันสำหรับสัญกรณ์โอเมก้าของ Hardy และ Littlewood [ 8 ]

เรื่องของสัญลักษณ์

ลูกศร

ในทางคณิตศาสตร์ นิพจน์เช่นบ่งบอกถึงการมีอยู่ของลิมิตในสัญกรณ์บิ๊กโอและสัญกรณ์ที่เกี่ยวข้อง ไม่มีลิมิตโดยนัย ซึ่งแตกต่างจาก สัญกรณ์ ลิตเติลโอและ สัญกรณ์อื่นๆ สัญกรณ์เช่นอาจถือได้ว่าเป็นการใช้สัญกรณ์อย่างไม่ถูกต้อง

เครื่องหมายเท่ากับ

บางคนมองว่า การใช้สัญลักษณ์นี้ ยังเป็นการใช้สัญลักษณ์ในทาง ที่ผิดด้วย เนื่องจากการใช้เครื่องหมายเท่ากับอาจทำให้เข้าใจผิดได้ เพราะมันบ่งบอกถึงความสมมาตรที่ข้อความนี้ไม่มี ดังที่เดอ บรูอินกล่าวว่าเป็นจริงแต่ไม่ใช่[ 26 ]คนูธอธิบายข้อความดังกล่าวว่าเป็น "ความเท่าเทียมกันทางเดียว" เพราะหากสามารถสลับข้างได้ "เราสามารถอนุมานสิ่งที่ไร้สาระเช่น จากเอกลักษณ์และ[ 27 ] ในจดหมายอีกฉบับหนึ่ง นูธยังชี้ให้เห็นว่า[ 28 ]

เครื่องหมายเท่ากับไม่สมมาตรเมื่อเทียบกับสัญลักษณ์อื่นๆ [เช่น ในสัญลักษณ์นี้] ที่นักคณิตศาสตร์มักใช้เครื่องหมาย '=' เหมือนกับที่ใช้คำว่า 'is' ในภาษาอังกฤษ: อริสโตเติลเป็นมนุษย์ แต่คนๆ หนึ่งไม่จำเป็นต้องเป็นอริสโตเติลเสมอไป

ด้วยเหตุผลเหล่า นี้บางคนจึงสนับสนุนให้ใช้สัญกรณ์เซตและเขียนว่า อ่านว่า " เป็นสมาชิกของ " หรือ " อยู่ในเซต " โดยคิดว่า เป็นกลุ่มของฟังก์ชันทั้งหมด ที่[ 27 ] อย่างไรก็ตาม การใช้เครื่องหมายเท่ากับเป็นเรื่องปกติ[ 26 ] [ 27 ] และสะดวกกว่าในนิพจน์ที่ซับซ้อนกว่าในรูปแบบ

สัญกรณ์ Vinogradov และซึ่งใช้กันอย่างแพร่หลายในทฤษฎีจำนวน [ 11 ] [ 4 ] [ 12 ] ไม่ประสบปัญหาข้อบกพร่องนี้ เนื่องจากสัญกรณ์เหล่านี้แสดงให้เห็นชัดเจนยิ่งขึ้นว่า big-O บ่งชี้ถึงความไม่เท่าเทียมกันมากกว่าความเท่าเทียมกันนอกจากนี้ยังมีความสมมาตรที่สัญกรณ์ big-O ขาดไป กล่าวคือ มีความหมายเหมือนกับในด้านคณิตศาสตร์เชิงการจัดเรียงและวิทยาศาสตร์คอมพิวเตอร์ สัญกรณ์เหล่านี้ไม่ค่อยพบเห็น[ 3 ]

การจัดเรียงตัวอักษร

Big O ถูกพิมพ์เป็นตัวพิมพ์ใหญ่แบบตัวเอียง " O "ดังตัวอย่างต่อไปนี้: . [ 29 ] [ 30 ]ในTeXสามารถสร้างได้โดยการพิมพ์ 'O' ภายในโหมดคณิตศาสตร์ ซึ่งแตกต่างจากสัญกรณ์ Bachmann–Landau ที่มีชื่อเป็นภาษากรีก ไม่จำเป็นต้องใช้สัญลักษณ์พิเศษใดๆ อย่างไรก็ตาม ผู้เขียนบางคนใช้รูปแบบการเขียนแบบลายมือแทน[ 31 ] [ 32 ]

เดิมทีตัวอักษร O ขนาดใหญ่หมายถึง "ลำดับของ" ("Ordnung", Bachmann 1894) ดังนั้นจึงเป็นอักษรละติน ทั้ง Bachmann และ Landau ไม่เคยเรียกมันว่า "Omicron" สัญลักษณ์นี้ถูกมองโดย Knuth ในภายหลัง (1976) ว่าเป็น omicron ตัวพิมพ์ใหญ่[ 8 ] ซึ่งอาจหมายถึงคำจำกัดความของสัญลักษณ์Omega ของเขา ไม่ควรใช้ เลขศูนย์

ดูเพิ่มเติม

เอกสารอ้างอิงและหมายเหตุ

  1. อรรถ เป็นบาคมันน์, พอล (1894) Analytische Zahlentheorie [ ทฤษฎีจำนวนเชิงวิเคราะห์ ] (ภาษาเยอรมัน) ฉบับที่ 2. ไลป์ซิก : ทอยบเนอร์
  2. a b c d eลันเดา, เอ็ดมันด์ (1909) Handbuch der Lehre von der Verteilung der Primzahlen [ คู่มือเกี่ยวกับทฤษฎีการกระจายตัวของจำนวนเฉพาะ ] (ในภาษาเยอรมัน) ไลป์ซิก : บีจี ทอยบเนอร์; พิมพ์ซ้ำเป็นสองเล่มในเล่มเดียวโดย Chelsea, 1974 โดยมีภาคผนวกโดย Dr. Paul T. Bateman หน้า  59–63 .
  3. ^ a b c d e f Cormen, Thomas H. ; Leiserson, Charles E. ; Rivest, Ronald L. ; Stein, Clifford (2022). "Characterizing running times". Introduction to Algorithms (4th ed.). MIT Press and McGraw-Hill. ISBN 978-0-262-53091-0.
  4. ^ a b c d e f Iwaniec, Henryk ; Kowalski, Emmanuel (2004). ทฤษฎีจำนวนเชิงวิเคราะห์สมาคมคณิตศาสตร์อเมริกัน
  5. ^ a b c d e Hardy, GH (1910). Orders of Infinity: The 'Infinitärcalcül' of Paul du Bois-Reymond . Cambridge University Press . หน้า 2.
  6. a b c d Vinogradov, Matveevič (1934) "การประมาณการใหม่สำหรับG ( n )ในปัญหาของ Waring" Doklady Akademii Nauk SSSR (ภาษารัสเซีย) 5 ( 5– 6): 249– 253.
    แปลเป็นภาษาอังกฤษโดย:
    Vinogradov, Matveevič (1985). ผลงานคัดสรร / อีวาน มัตเววิช วินอกราดอฟ; จัดทำโดยสถาบันคณิตศาสตร์สเตคลอฟแห่งสถาบันวิทยาศาสตร์แห่งสหภาพโซเวียต เนื่องในโอกาสวันคล้ายวันเกิดครบรอบ 90 ปี Springer-Verlag.
  7. ^ a b c d e Hardy, GH ; Littlewood, JE (1914). "ปัญหาบางประการของการประมาณไดโอแฟนไทน์: ตอนที่ 2 อนุกรมตรีโกณมิติที่เกี่ยวข้องกับ  ฟังก์ชันθวงรี " Acta Mathematica . 37 : 225. doi : 10.1007/BF02401834 . เก็บถาวรจากต้นฉบับเมื่อ 2018-12-12 . สืบค้นเมื่อ2017-03-14 .
  8. ^ a b c d e f g h i j Knuth, Donald (เมษายน–มิถุนายน 1976). "Big Omicron and big Omega and big Theta" . SIGACT News . 8 (2): 18– 24. doi : 10.1145/1008328.1008329 . S2CID 5230246 . 
  9. อรรถa b cบัวส์-เรย์มอนด์, ปอล ดู (1870) “ซูร์ ลา ความยิ่งใหญ่ สัมพันธ์ เด อินฟินิส เด ฟองก์ชันอันนาลี ดิ มาเตเมติกา . ซีรีส์ 2.4 : 338– 353.ดอย: 10.1007 /BF02420041 .
  10. ^ Sipser, Michael (2012). บทนำสู่ทฤษฎีการคำนวณ (ฉบับที่ 3). บอสตัน, แมสซาชูเซตส์: สำนักพิมพ์ PWS.
  11. ^ a b c d e f Ivić, A. (1985). ฟังก์ชันซีตาของรีมันน์ . John Wiley & Sons. บทที่ 9.
  12. ^ a b c d e f g Gérald Tenenbaum, บทนำสู่ทฤษฎีจำนวนเชิงวิเคราะห์และเชิงความน่าจะเป็น, « สัญกรณ์ », หน้า xxiii. สมาคมคณิตศาสตร์อเมริกัน, พรอวิเดนซ์ รัฐโรดไอส์แลนด์, 2015.
  13. ^ a b E. C. Titchmarsh, ทฤษฎีของฟังก์ชันซีตาของรีมันน์ (อ็อกซ์ฟอร์ด; สำนักพิมพ์แคลเรนดอน, 1951)
  14. ^ Seidel, Raimund (1991), "อัลกอริทึมแบบสุ่มเพิ่มทีละขั้นที่ง่ายและรวดเร็วสำหรับการคำนวณการแบ่งรูปสี่เหลี่ยมคางหมูและการสร้างรูปสามเหลี่ยมของรูปหลายเหลี่ยม", เรขาคณิตเชิงคำนวณ , 1 : 51– 64, CiteSeerX 10.1.1.55.5877 , doi : 10.1016/0925-7721(91)90012-4 
  15. ^ a b Hardy, GH ; Littlewood, JE (1916). "การมีส่วนร่วมในทฤษฎีของฟังก์ชันซีตาของรีมันน์และทฤษฎีการกระจายของจำนวนเฉพาะ" Acta Mathematica . 41 : 119– 196. doi : 10.1007/BF02422942 .
  16. ลันเดา, อี. (1924) "Über ตาย Anzahl der Gitterpunkte ใน gewissen Bereichen. IV" [เกี่ยวกับจำนวนจุดกริดในภูมิภาคที่ทราบ] นัชร. เกเซลล์. วิส. เกิทท์. คณิตศาสตร์-phys (ภาษาเยอรมัน): 137– 150.
  17. บัลกาซาร์, โฮเซ่ แอล.; กาบาร์โร, โจอาควิม. "คลาสความซับซ้อนไม่สม่ำเสมอที่ระบุโดยขอบเขตล่างและบน" (PDF ) RAIRO - สารสนเทศเชิงทฤษฎีและการประยุกต์ - Informatique Théorique และการประยุกต์ใช้งาน23 (2): 180. ISSN 0988-3754 . เก็บถาวร(PDF)จากต้นฉบับเมื่อวันที่ 14 มีนาคม 2017 . สืบค้นเมื่อ 14 มีนาคม 2017 – จาก Numdam. 
  18. ^ Cucker, Felipe; Bürgisser, Peter (2013). "A.1 Big Oh, Little Oh, and Other Comparisons" . Condition: The Geometry of Numerical Algorithms . Berlin, Heidelberg: Springer. หน้า  467–468 . doi : 10.1007/978-3-642-38896-5 . ISBN 978-3-642-38896-5.
  19. ^ตัวอย่างเช่น มีการละเว้นใน: Hildebrand, AJ "Asymptotic Notations" (PDF)ภาควิชาคณิตศาสตร์วิธีการเชิงอะซิมโทติกในการวิเคราะห์ Math 595 ภาคเรียนฤดูใบไม้ร่วง 2009 Urbana, IL: มหาวิทยาลัยอิลลินอยส์เก็บถาวร(PDF)จากต้นฉบับเมื่อวันที่ 14 มีนาคม 2017 เรียกดูเมื่อวันที่ 14 มีนาคม 2017
  20. ^ Cormen et al. 2022 , หน้า 57.
  21. คอร์เมน และคณะ 2022 , หน้า. 74–75.
  22. ^ Andreas Björklund และ Thore Husfeldt และ Mikko Koivisto (2009). "การแบ่งเซตผ่านการรวมและการแยกออก" (PDF) . SIAM Journal on Computing . 39 (2): 546– 563. doi : 10.1137/070683933 . เก็บถาวร(PDF)จากต้นฉบับเมื่อ 2022-02-03 . เรียกดูเมื่อ2022-02-03 .ดูหัวข้อ 2.3 หน้า 551
  23. ^ Erdelyi, A. (1956). การขยายเชิงอะซิมโทติก . Courier Corporation. ISBN 978-0-486-60318-6.{{cite book}}: ISBN / Date incompatibility (help).
  24. ^ Hardy, GH (1966–1979). รวมบทความของ GH Hardy (รวมถึงบทความร่วมกับ JE Littlewood และคนอื่นๆ) 7 เล่ม . สำนักพิมพ์ Clarendon Press, อ็อกซ์ฟอร์ด.
  25. ^ Hardy, GH; Wright, EM (2008) [ฉบับพิมพ์ครั้งที่ 1 ปี 1938]. "1.6. สัญลักษณ์บางอย่าง". บทนำสู่ทฤษฎีจำนวน ฉบับปรับปรุงโดยDR Heath-BrownและJH Silvermanพร้อมคำนำโดยAndrew Wiles (ฉบับพิมพ์ครั้งที่ 6). อ็อกซ์ฟอร์ด: สำนักพิมพ์มหาวิทยาลัยอ็อกซ์ฟอร์ด. ISBN 978-0-19-921985-8.
  26. อรรถ เป็นเดอ บรุยน์ เอ็นจี (1958) วิธีเชิงเส้นกำกับในการวิเคราะห์ อัมสเตอร์ดัม: ฮอลแลนด์เหนือ หน้า  5– 7. ISBN 978-0-486-64221-5เก็บถาวรจากต้นฉบับเมื่อ 2023-01-17 เรียกดูเมื่อ2021-09-15{{cite book}}: ISBN / Date incompatibility (help)
  27. ^ a b c Graham, Ronald ; Knuth, Donald ; Patashnik, Oren (1994). คณิตศาสตร์รูปธรรม (ฉบับที่ 2). เรดดิง, แมสซาชูเซตส์: Addison–Wesley. หน้า 446. ISBN 978-0-201-55802-9เก็บถาวรจากต้นฉบับเมื่อ 2023-01-17 เรียกดูเมื่อ2016-09-23
  28. ^ Donald Knuth (มิถุนายน–กรกฎาคม 1998). "สอนแคลคูลัสด้วย Big O" (PDF) . ประกาศของสมาคมคณิตศาสตร์อเมริกัน . 45 (6): 687. เก็บถาวร(PDF)จากต้นฉบับเมื่อ 2021-10-14 . เรียกดูเมื่อ2021-09-05 .( ฉบับเต็มเก็บ ถาวรเมื่อ วันที่ 13 พฤษภาคม 2008 ที่Wayback Machine )
  29. ^ Donald E. Knuth, ศิลปะแห่งการเขียนโปรแกรมคอมพิวเตอร์ เล่ม 1 อัลกอริทึมพื้นฐาน ฉบับพิมพ์ครั้งที่ 3 Addison Wesley Longman, 1997 ส่วนที่ 1.2.11.1
  30. ^ Ronald L. Graham, Donald E. Knuth และ Oren Patashnik,คณิตศาสตร์รูปธรรม: รากฐานสำหรับวิทยาศาสตร์คอมพิวเตอร์ (ฉบับที่ 2) , Addison-Wesley, 1994. ส่วนที่ 9.2, หน้า 443.
  31. ^ Sivaram Ambikasaran และ Eric Darve,ตัวแก้ปัญหาโดยตรงที่รวดเร็วสำหรับเมทริกซ์กึ่งแยกส่วนลำดับชั้นบางส่วน, J. Scientific Computing 57 (2013), ฉบับที่ 3, 477–501
  32. ^ Saket Saurabh และ Meirav Zehavi,-Max-Cut:อัลกอริทึมเวลาและเคอร์เนลพหุนาม, Algorithmica 80 (2018), ฉบับที่ 12, 3844–3860

หมายเหตุ

  1. ^โปรดทราบว่า "ขนาด" ของข้อมูลนำเข้ามักใช้เป็นตัวบ่งชี้ว่าปัญหาในแต่ละกรณีมีความท้าทายมากน้อยเพียงใด ปริมาณเวลา [การประมวลผล] และปริมาณพื้นที่ [หน่วยความจำ] ที่จำเป็นในการคำนวณคำตอบ (หรือเพื่อ "แก้ปัญหา" นั้น) ถือเป็นตัวบ่งชี้ความยากของปัญหาใน แต่ละ กรณี สำหรับ ทฤษฎีความซับซ้อนของการคำนวณ นั้น สัญลักษณ์ Bigใช้สำหรับขอบเขตบนของ [ลำดับขนาด" ของ] ทั้ง 3 อย่างนี้ ได้แก่ ขนาดของ [กระแสข้อมูล] ข้อมูลนำเข้า ปริมาณเวลา [การประมวลผล] ที่จำเป็น และปริมาณพื้นที่ [หน่วยความจำ] ที่จำเป็น
  2. ^ชื่อนี้ปรากฏอยู่ในชื่อบทความของ Knuth ในปี 1976 และไม่ปรากฏที่อื่นใดในบทความนั้นอีกเลย แทบจะไม่เคยหรืออาจไม่เคยใช้เลยด้วยซ้ำ

อ่านเพิ่มเติม

  • Knuth, Donald (1997). "1.2.11: การนำเสนอเชิงอะซิมโทติก" อัลกอริทึมพื้นฐานศิลปะแห่งการเขียนโปรแกรมคอมพิวเตอร์ เล่ม 1 (ฉบับที่ 3). Addison-Wesley. ISBN 978-0-201-89683-1.
  • Sipser, Michael (1997). บทนำสู่ทฤษฎีการคำนวณ . สำนักพิมพ์ PWS. หน้า  226–228 . ISBN 978-0-534-94728-6.
  • Avigad, Jeremy; Donnelly, Kevin (2004). การกำหนดรูปแบบสัญลักษณ์ O ใน Isabelle/HOL อย่างเป็นทางการ (PDF)การประชุมนานาชาติร่วมว่าด้วยการให้เหตุผลอัตโนมัติdoi : 10.1007/978-3-540-25984-8_27 .
  • แบล็ก, พอล อี. (11 มีนาคม 2548). แบล็ก, พอล อี. (บรรณาธิการ). "สัญกรณ์บิ๊กโอ" . พจนานุกรมอัลกอริทึมและโครงสร้างข้อมูล . สถาบันมาตรฐานและเทคโนโลยีแห่งชาติสหรัฐอเมริกา. สืบค้นเมื่อ16 ธันวาคม 2549 .
  • แบล็ก, พอล อี. (17 ธันวาคม 2004). แบล็ก, พอล อี. (บรรณาธิการ). "สัญกรณ์ลิตเติล-โอ"พจนานุกรมอัลกอริทึมและโครงสร้างข้อมูลสถาบันมาตรฐานและเทคโนโลยีแห่งชาติสหรัฐอเมริกาสืบค้นเมื่อ16 ธันวาคม 2006
  • แบล็ก, พอล อี. (17 ธันวาคม 2004). แบล็ก, พอล อี. (บรรณาธิการ). "Ω" . พจนานุกรมอัลกอริทึมและโครงสร้างข้อมูล . สถาบันมาตรฐานและเทคโนโลยีแห่งชาติสหรัฐอเมริกา. สืบค้นเมื่อ16 ธันวาคม 2006 .
  • แบล็ก, พอล อี. (17 ธันวาคม 2004). แบล็ก, พอล อี. (บรรณาธิการ). "ω" . พจนานุกรมอัลกอริทึมและโครงสร้างข้อมูล . สถาบันมาตรฐานและเทคโนโลยีแห่งชาติสหรัฐอเมริกา. สืบค้นเมื่อ16 ธันวาคม 2006 .
  • แบล็ก, พอล อี. (17 ธันวาคม 2004). แบล็ก, พอล อี. (บรรณาธิการ). "Θ" . พจนานุกรมอัลกอริทึมและโครงสร้างข้อมูล . สถาบันมาตรฐานและเทคโนโลยีแห่งชาติสหรัฐอเมริกา. สืบค้นเมื่อ16 ธันวาคม 2006 .
  • การเติบโตของลำดับ — OEIS (สารานุกรมออนไลน์ของลำดับจำนวนเต็ม) วิกิ
  • บทนำเกี่ยวกับสัญกรณ์เชิงเส้นกำกับ
  • สัญกรณ์บิ๊กโอ – มีประโยชน์อย่างไรบ้าง
  • ตัวอย่างของ Big O ในความแม่นยำของแผนการหาอนุพันธ์อันดับแรกแบบแบ่งส่วนกลาง
  • บทนำอย่างง่ายเกี่ยวกับการวิเคราะห์ความซับซ้อนของอัลกอริทึม
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Big_O_notation&oldid=1359021092#Little-o_notation "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ สัญกรณ์บิ๊ก โอ

สัญกรณ์Big O เป็น สัญกรณ์ทางคณิตศาสตร์ ที่อธิบายขนาดโดยประมาณของ ฟังก์ชัน บน โดเมน Big O เป็นสมาชิกของ กลุ่มสัญกรณ์ ที่คิดค้นโดยนักคณิตศาสตร์ชาวเยอรมัน Paul Bachmann [ 1 ] และ...

คำจำกัดความอย่างเป็นทางการ

ให้ฟังก์ชันที่ต้องการประมาณค่าเป็น ฟังก์ชันค่า จริง หรือ ค่า เชิงซ้อน ที่กำหนดบน โดเมน และให้ฟังก์ชันเปรียบเทียบเป็นฟังก์ชันค่าจริงที่ไม่เป็นลบที่กำหนดบนเซตเดียวกันตัวเลือกทั่วไปสำหรับโดเมน ได้แก่ ช่วงของจำนวนจริงที่มีขอบเขตหรือไม่มีขอบเขต เซตของจำนวนเต็มบวก...

เวอร์ชั่นเซ็ตของบิ๊กโอ

ในวิทยาการคอมพิวเตอร์ [ 3 ] เป็นเรื่องปกติที่จะกำหนด big โอ {\textstyle O} ให้เป็นการกำหนด เซต ของฟังก์ชันด้วยเช่นกัน เมื่อระบุฟังก์ชันบวก (หรือไม่ใช่ลบ) แล้ว จะตีความได้ว่าเป็นการแทน เซต ของฟังก์ชันทั้งหมดที่ตรงตามเงื่อนไขจากนั้นสามารถเขียนได้เทียบเท่าว่า...

ตัวอย่างที่มีโดเมนอนันต์

โดยทั่วไปแล้วสัญลักษณ์นี้จะถูกนำไปใช้กับช่วงอนันต์ของจำนวนจริงและแสดงถึงพฤติกรรมของฟังก์ชันสำหรับค่าn ที่มาก ๆ ในบริบทนี้ ผลกระทบของพจน์ที่เติบโต "เร็วที่สุด" จะทำให้พจน์อื่น ๆ ไม่สำคัญในที่สุด ดังนั้นจึงสามารถใช้กฎการลดรูปต่อไปนี้ได้: โอ {\displaystyle O} [...