ลำดับการดำเนินการอัลกอริธึมเชิงตัวเลข


10

ฉันได้อ่านแล้ว

(1) การปฏิบัติที่มีเงื่อนไขควรดำเนินการก่อนที่จะมีสภาพที่ดี

ตัวอย่างเช่นเราควรคำนวณเป็น( x - y ) zเนื่องจากการลบนั้นไม่ได้ถูกกำหนดเงื่อนไขในขณะที่การคูณไม่ได้xz−yz(x−y)z

อย่างไรก็ตามการวิเคราะห์ข้อผิดพลาดลำดับแรกของอัลกอริทึมทั้งสองเผยให้เห็นว่าพวกเขาแตกต่างกันเพียงปัจจัยที่สาม (*) และฉันไม่เห็นว่าทำไมคนทั่วไปสามารถสรุปสิ่งนี้กับคำสั่ง (1) และฉันไม่เข้าใจความสำคัญของ คำสั่งของการดำเนินงาน คุณคิดว่าข้อความคือ (1) เป็นกฎที่ยอมรับได้และคุณมีคำอธิบายอื่น ๆ หรือไม่?

*: โดยเฉพาะอย่างยิ่งรุ่นแรกมีข้อผิดพลาดสัมพัทธ์ที่ล้อมรอบ

ในขณะที่ข้อผิดพลาดสัมพัทธ์ของรุ่นที่สองถูกล้อมรอบด้วย

eps+3|x|+|y||x|−|y|eps

3eps+|x|+|y||x|−|y|eps

โดยที่คือความแม่นยำของเครื่องeps

การวิเคราะห์นี้ตั้งอยู่บนสมมติฐานที่ว่า -th ผลกลางจะคูณด้วย( 1 + ε ฉัน ) (เนื่องจากการปัดเศษข้อผิดพลาด) ที่ε ฉันเป็นตัวแปรสุ่ม IID ล้อมรอบด้วยeps "ลำดับแรก" หมายถึงคำสั่งที่สูงกว่าเช่นϵ ฉันϵ j xถูกละเลยi(1+εi)εiepsϵiϵjx


คุณอ่านมาจากที่ไหน
— David Ketcheson

ในบันทึกการบรรยายของฉัน
— Bananach

คำตอบ:


8

ลองแทนด้วย (ฉันขี้เกียจพยายามที่จะทำให้ผู้ควบคุมการหารรุ่น) วงกลม analogs จุดลอยตัวของการคูณที่แน่นอน ( × ), การเพิ่ม ( + ) และการลบ ( - ) ตามลำดับ เราจะถือว่า (IEEE-754) ที่สำหรับพวกเขาทั้งหมด [ x ⊕ Y ] = ( x + Y ) ( 1 + δ ⊕ ) ,⊗,⊕,⊖×+− ที่ ϵ m a c hเป็นเครื่อง epsilon ที่ให้ขอบเขตบนข้อผิดพลาดสัมพัทธ์เนื่องจากการปัดเศษ นอกจากนี้เรายังจะใช้แทรกดังต่อไปนี้ (สมมติทั้งหมด | δ ฉัน| ≤ ε m คเอชและม.มีขนาดไม่ใหญ่เกินไป) ที่สามารถพิสูจน์ได้อย่างง่ายดาย: ม. Πฉัน= 1 ( 1 + δ ฉัน ) = 1 + θ (

[x⊕y]=(x+y)(1+δ⊕),|δ⊕|≤ϵmach,
ϵmach|δi|≤ϵmachm
∏i=1m(1+δi)=1+θ(m),|θ(m)|≤mϵmach1−mϵmach

fx,y,z

f(x,y,z)=(x×z)−(y×z)

f1~f2~x~=x(1+δx),y~,z~

f1~(x~,y~,z~)=(x~⊗z~)⊖(y~⊗z~),

f2~(x~,y~,z~)=(x~⊖y~)⊗z~.

f1~

f1~=((x(1+δx)×z(1+δz))(1+δ⊗xz)⏟(x~⊗z~)−(y(1+δy)×z(1+δz))(1+δ⊗yz)⏟(y~⊗z~))(1+δ⊖)=xz(1+δx)(1+δz)(1+δ⊗xz)(1+δ⊖)−yz(1+δy)(1+δz)(1+δ⊗yz)(1+δ⊖)=xz(1+θxz,1)−yz(1+θyz,1).
|θxz,1|,|θyz,1|≤4ϵmach1−4ϵmach

f2~

f2~=(((x(1+δx)−y(1+δy)(1+δ⊖xy))×(z(1+δz)))(1+δ⊗)=xz(1+δx)(1+δz)(1+δ⊖xy)(1+δ⊗)−yz(1+δy)(1+δz)(1+δ⊖xy)(1+δ⊗)=xz(1+θx,2)−yz(1+θy,2).
|θx,2|,|θy,2|≤4ϵmach1−4ϵmach

f1~f2~f2~f1~

xy

|f1~−f||f|=|xz+xzθxz,1−yz−yzθyz,1−(xz−yz)||xz−yz|=|xθxz,1−yθyz,1||x−y|≤|x|+|y||x−y|4ϵmach1−4ϵmach,
|f2~−f||f|=|xz+xzθx,2−yz−yzθy,2−(xz−yz)||xz−yz|=|xθx,2−yθy,2||x−y|≤|x|+|y||x−y|4ϵmach1−4ϵmach.

θx,y,z(x−y)xy

x,y,z,f(x,y,z)∈F0F0

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.