Thuật toán tìm nghiệm nguyên của phương trình diophantine tuyến tính

37 26 0
Thuật toán tìm nghiệm nguyên của phương trình diophantine tuyến tính

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH TƠN NỮ KHÁNH TRANG THUẬT TỐN TÌM NGHIỆM NGUN CỦA PHƯƠNG TRÌNH DIOPHANTINE TUYẾN TÍNH LUẬN VĂN THẠC SĨ TỐN HỌC Nghệ An - 2017 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH THUẬT TỐN TÌM NGHIỆM NGUN CỦA PHƯƠNG TRÌNH DIOPHANTINE TUYẾN TÍNH Chun ngành: ĐẠI SỐ VÀ LÝ THUYẾT SỐ Mã số: 60 46 01 04 LUẬN VĂN THẠC SĨ TOÁN HỌC Người hướng dẫn khoa học TS ĐÀO THỊ THANH HÀ Nghệ An - 2017 MỤC LỤC Mục lục Mở đầu Kiến thức chuẩn bị 1.1 Quan hệ chia hết 1.2 Phép chia có dư 1.3 Ước chung lớn 1.4 Đồng dư thức 10 13 Thuật toán tìm nghiệm ngun phương trình Diophantine tuyến tính 15 2.1 Nghiệm ngun phương trình Diophantine tuyến tính 15 2.2 Các thuật tốn tìm nghiệm nguyên Dophantine tuyến tính 20 Kết luận 36 Tài liệu tham khảo 37 MỞ ĐẦU Phương trình Diophantine phương trình đại số địi hỏi tìm nghiệm hữu tỷ nghiệm nguyên Hay nói cách khác phương trình bao gồm biểu thức đa thức hay nhiều biến mà hệ số đa thức phải hữu tỷ nguyên nghiệm số hữu tỷ số nguyên Hai phương trình quen biết từ lý thuyết sơ khai, có từ trước thời Diophantine ví dụ phương trình Diophantine Đó là: Phương trình bậc (tuyến tính) hai biến: ax+ by = c (trong a, b, c số nguyên đồng thời biến x, y nhận giá trị nguyên.) Phương trình bậc hai (phi tuyến) ba biến x2 + y = z (trong biến x, y, z nhận giá trị nguyên) Phương trình Diophantine chủ đề quan trọng chương trình tốn phổ thơng Tuy nhiên chương trình Tốn THPT mơn số học chưa dành nhiều thời gian Vì học sinh thường tỏ lúng túng giải toán số học, đặc biệt toán phương trình Diophantine Xun suốt lịch sử tốn học có nhiều nhà toán học nghiên cứu chủ đề Tuy nhiên số lượng vấn đề chưa giải vô lớn Một số câu hỏi đặt có liên quan đến việc tìm nghiệm nguyên phương trình hai hay nhiều ẩn: +) Liệu phương trình xét có tồn nghiệm nguyên hay không? +) Số nghiệm nguyên phương trình xét hữu hạn hay vơ hạn? +) Tìm tất nghiệm nguyên phương trình xét Đó câu hỏi mà khơng phải có câu trả lời Chẳng hạn, phương trình 2x + 3y +4z + 6t= có tồn nghiệm ngun hay khơng? Hay phương trình: x + y = z có nghiệm nguyên (1;1;2), (-1;-1;-2), (1;-1;0), (-1;1;0) số nghiệm ngun phương trình bao nhiêu? Vậy có hay khơng thuật tốn để giải tất loại phương trình Diophantine? Câu trả lời khơng tồn thuật tốn chung cho việc giải phương trình Diophantine tổng quát Tuy số lớp phương trình Diophantine, chẳng hạn phương trình Diophantine tuyến tính, Florentin Smarandache trình bày báo “INTEGER ALGORITHMS TO SOLVE DIOPHANTINE LINEAR EQUATIONS AND SYSTEMS” ([3]), thuật tốn tìm nghiệm ngun phương trình hệ phương trình tuyến tính Diophantine, với tính chất nghiệm nguyên tổng quát nghiệm nguyên riêng Chúng tơi nghiên cứu trình bày lại chi tiết số kết báo Luận văn chia làm hai chương Chương 1: Kiến thức chuẩn bị Trong chương nhắc lại khái niệm quan hệ chia hết, phép chia có dư, ước chung lớn nhất, thuật tốn Euclid khái niệm đồng dư Chương 2: Thuật toán tìm nghiệm ngun phương trình Diophantine tuyến tính Trong chương chúng tơi trình bày hai thuật tốn tìm nghiệm ngun riêng nghiệm ngun tổng qt phương trình Diophantine tuyến tính Luận văn hồn thành Trường Đại học Vinh hướng dẫn TS Đào Thị Thanh Hà Tác giả xin bày tỏ lời cảm ơn sâu sắc đến Cô, người tận tình hướng dẫn, động viên tạo điều kiện thuận lợi cho tác giả suốt trình học tập thực luận văn Nhân dịp này, tác giả xin trân trọng cảm ơn thầy cô giáo Bộ môn Đại số, thầy cô giáo Khoa Toán trực tiếp giảng dạy lớp Cao học 23 chuyên ngành Đại số Lý thuyết số Tác giả xin cảm ơn Ban chủ nhiệm Khoa Sư phạm Tốn học, Phịng Đào tạo Sau đại học, Ban Giám hiệu - Trường Đại học Vinh tạo điều kiện thuận lợi cho tác giả suốt trình học tập Trường Nghệ An, tháng 07 năm 2017 Tác giả CHƯƠNG KIẾN THỨC CHUẨN BỊ Trong chương nhắc lại khái niệm lý thuyết chia hết vành số nguyên 1.1 Quan hệ chia hết 1.1.1 Định nghĩa Cho a, b ∈ Z, b = Ta nói a chia hết cho b (b chia hết a), kí hiệu: a b (hay b|a) ∃c ∈ Z cho a = bc Khi a b ta nói a bội b hay b ước a 1.1.2 Tính chất b, ∀b ∈ Z, b = 0, có số có tính chất ±1 ước số nguyên, có ±1 có tính chất Nếu số hạng tổng chia hết cho số tổng củng chia hết cho số Nếu a b a ± b, ±a b Nếu a b a = |a| Nếu a b, b a a = ±b |b| 1.1.3 Ví dụ hay 2|6 Ta nói bội ước 12 Ta nói 12 khơng phải bội hay ước 12 1.2 Phép chia có dư 1.2.1 Định lý (Định lý phép chia có dư) (i) Cho a, b ∈ N, b = Khi tồn cặp só tự nhiên q r cho a=bq + r, r bq bq số lớn M) ⇒ b(q + 1) > a ⇔ bq + b > a ⇔ b > a − bq Đặt r = a - bq ⇒ r < b (vì bq a, a − bq < b) ⇒ a = bq + r Tính nhất: Giả sử a = bq+r = bq’ + r’, với r, r < r Ta có bq bq + r = bq + r < bq + b = b(q + 1) ⇒q chứng minh (i) Trường hợp 2: a 0, b < Áp dụng (i) số tự nhiên a (-b), tồn cặp số tự nhiên q’, r’ cho: a = −bq + r , r < −b ⇒ a = b(−q ) + r Đặt q = -q’; r = r’ => q, r cặp số nguyên a = bq + r, Trương hợp 3: a r < |b| 0, b > Áp dụng (i) số tự nhiên –a b, tồn cặp số tự nhiên q’, r’ cho: −a = bq + r , r a = bq Nếu r = 0, ta có b(−q − 1) + (b − r ) Đặt q = -q’ – 1, r = b – r’ suy q, r củng cặp số nguyên a = bq + r, Trường hợp 4: a r a = bq Nếu r = 0, a = b(q’-1)+(b-r) Đặt q = q’ – 1, r = b – r’ suy q, r củng cặp số nguyên cho a = bq + r, r gọi ước chung lớn (ƯCLN) a b d chia hết cho ước chung a b Kí hiệu: d =(a,b) 1.3.2 Ví dụ (18,12) = 6; (5,9) = 1.3.3 Định lý Cho a, b ∈ Z Khi d = (a, b) tồn Chứng minh Sự tồn tại: Trước hết ta có nhận xét (a,b) = (-a,-b) = (-a,b) = (a,-b) Vì khơng tính tổng qt ta giả sử a 0, b ∀d ∈ Z, d = ta ln có d|0, nên ta giả sử a>0, b>0 Đặt M = {ax + by; x, y ∈ Z} M = a.1 + b.2 ∈ M Giả sử α ∈ M ⇒ ∃u, v ∈ Z : α = au + bv ⇒ −α = a(−u) + b(−v) ∈ M Suy M có số nguyên dương Do tập số tự nhiên N thứ tự tốt, có nghĩa tập N có số bé Do M có số nguyên dương bé Gọi d số nguyên dương bé M Khi d =(a,b) Thật vậy, theo định lý phép chia có dư ta có với cặp (a,d) (b,d) a = dq + r, b = dq + r , r < d ⇒ r = a − dq r < d ⇒ r = b − dq (*) Vì d ∈ M nên ∃x, y ∈ Z : d = ax + by Thay vào (*) ta có: r = a − (ax + by)q = a(1 − xq) + b(−yq) ∈ M r = b − (ax + by)q = a(−xq ) + b(1 − yq ) ∈ M ⇒ r, r ∈ M, r, r < d mà d số nguyên dương bé thuộc M nên r = r = ⇒ a = dq, b = dq ⇒ d|a, d|b 23 hạn bước có được, bước 4, a:=1 (thực tế a ln nhỏ so với trước, theo ý trước) trường hợp thuật toán kết thúc 2.2.3 Bổ đề Giả sử phương trình tuyến tính là: a1 x1 + + an xn = b (7) với |as | = a1 phương trình as =0 −a1 t1 + r2 x2 + + rn xn = r (8) với t1 = −x1 − q2 x2 − − qn xn + q ri = − a1 qi , i = 2, n, b r = b − a1 q qi = , r= a1 a1 0 Khi x1 = x1 , x2 = x2 , , xn = x0n nghiệm riêng phương trình (7) t1 = t01 = −x01 − q2 x02 − − qn x0n + q ; x2 = x02 , , xn = x0n nghiệm riêng phương trình (8) Chứng minh x1 = x01 , x2 = x02 , , xn = x0n nghiệm riêng phương trình (7) tương đương a1 x01 + a2 x02 + + an x0n = b ⇔ a1 x01 + (r2 + a1 q2 )x02 + (rn + a1 qn )x0n = a1 q + r ⇔ r2 x02 + + rn x0n − a1 (−x01 − q2 x02 − − qn x0n + q) = r ⇔ −a1 t01 + r2 x02 + + rn x0n = r ⇔ t1 = t01 , x2 = x02 , , xn = x0n nghiệm riêng phương trình (8) 2.2.4 Bổ đề xi = ci1 k1 + + cin−1 kn−1 + di , i = 1, 2, , n (9) nghiệm tổng quát phương trình (7) t1 = −(c11 + q2 c21 + + qn cn1 )k1 − − (c1n−1 + q2 c2n−1 + + qn cnn−1 )kn −(d1 + q2 d2 + + qn dn ) + q, xj = c1j k1 + + cjn−1 kn−1 + dj , j = 2, 3, , n nghiệm tổng quát phương trình (8) Chứng minh t1 = t01 = −x01 − q2 x02 − − qn x0n + q, x2 = x02 , , xn = x0n nghiệm riêng phương trình (8) 24 ⇔ x1 = x01 , x2 = x02 , , xn = x0n n nghiệm riêng phương trình (7) + di = ⇔ ∃k1 = k10 ∈ Z, , kn = kn0 ∈ Z cho xi = ci1 k10 + + cin−1 kn−1 x0i , i = 1, 2, , n ⇔ ∃k1 = k10 ∈ Z, , kn = kn0 ∈ Z cho xi = ci1 k10 + + cin−1 kn−1 + di = x0i , i = 2, 3, , n t1 = −(c11 + q2 c21 + + qn cn1 )k10 − − (c1n−1 + q2 c2n−1 + + qn cnn−1 )kn−1 −(d1 + q2 d2 + + qn dn ) + q = −x01 − q2 x02 − − qn x0n + q = t01 2.2.5 Bổ đề Phương trình tuyến tính a1 x1 + + an xn = b với |a1 | = (10) có nghiệm tổng quát:  x1 = −(a2 k2 + + an kn − b)a1    xi = ki ∈ Z    i = 2, 3, , n Chứng minh Giả sử x1 = x01 , x2 = x02 , , xn = x0n nghiệm riêng phương trình (10) ∃k2 = x02 , , kn = x0n cho x1 = −(a2 x02 + + an x0n − b)a1 = x10 , x2 = x02 , , xn = x0n 2.2.6 Bổ đề Xét phương trình tuyến tính a1 x1 + + an xn = b với |as | = a1 = a1 qi , i = 2, 3, , n as =0 Thế nghiệm tổng quát phương trình  x1 = −(q2 k2 + + qn kn − q)    xi = ki ∈ Z    i = 2, n 25 Chứng minh Chia phương trình cho a1 áp dụng Bổ đề?? Tính đắn thuật tốn: Định lý trước tính tốn cách xác nghiệm tổng qt phương trình tuyến tính: a1 x1 + + an xn = b với tất không đồng thời không Chứng minh Thuật tốn hữu hạn theo Bổ đề2.2.2 Tính đắn bước 1,2 hiển nhiên Ở bước ta ln có |as | khơng đồng as =0 thờ Tính đắn bước 6(A) kết từ Bổ đề 2.2.5 Bổ đề 2.2.6 Thuật toán nhận nghiệm tổng quát phương trình ban đầu nghiệm tổng qt phương trình tuyến tính thu đươc sau số vòng lặp (Theo Bổ đề 2.2.3 Bổ đề 2.2.4); từ Bổ đề 2.2.4 cho thấy nghiệm tổng qt phương trình tuyến tính ban đầu thu tương đương với tính nghiệm tổng quát phương trình bước 6(A), phương trình có nghiệm tổng qt đưa thật tốn (theo Bổ đề 2.2.5 Bổ đề 2.2.6) Tính đắn định lý chứng minh đầy đủ Chú ý: Ở Bước thuật toán ta xét a := {|as |} cho số lần lặp lại as =0 nhỏ tốt Thuật toán thực ta đặt a := |ai | = max {|as |} s=1,n phải thời gian lâu Thuật tốn đưa vào chương trình máy tính Ứng dụng: T ìm nghiệm ngun phương trình: 22x1 − 12x2 + 8x3 − 6x4 = 18 Giải: Áp dụng bước thuật tốn Bước 1.Tìm ước chung lớn hệ số ẩn: d = (22,-12,8,-6) = Bước Ta có: d =2; b=18 nên d ước b Vì phương trình cho 26 có nghiệm nguyên Bước h:=1; |2| = , chia hai vế phương trình cho 2, ta phương trình: 11x1 − 6x2 + 4x3 − 3x4 = Bước a := {|as |} = {|11| , |−6| , |4| , |−3|} = 3, i = as =0 as =0 Bước a = 1, chuyển sang bước Bươc a1 = 11 = −3.(−3) + a2 = −6 = −3.2 + a3 = = −3.(−1) + b = = −3.(−3) + 0a1 = 11 = −3.3 + Bước Viết x4 = 3x1 − 2x2 + x3 − − t1 (11) Bước Đặt a1 = a4 = a2 = x4 = t1 h=2 a3 = b=0 (quay Bước 4) Phương trình là: 2x1 + 0x2 + x3 + 3t1 = (12) a := {|as |} = {|2| , |1| , |3|} = 1, i = as =0 as =0 ( Do a = nên thức bước 6) Bước a = (A) x3 = −(2x1 + 0x2 + 3t1 ) = −2x1 − 3t1 (13) (B) Thay giá trị x3 vào x4 ta thu x4 = x1 − x2 − 4t1 − (C) Thay x1 = k1 , x2 =  k2 , t1 = k3 ta có nghiệm nguyên tổng quát x1 = k1      x2 = k2 phương trình ban đầu là:  x3 = −2k1 − 3k3      x4 = k1 − 2k2 − 4k3 − 27 Với k1 , k2 , k3 tham số nhận giá trị nguyên 2.2.7 Thuật toán Trong phần trình bày thuật tốn khác tìm nghiệm ngun phương trình tuyến tính cách sử dụng phép đồng dư Xét phương trình tuyến tính : a1 x1 + a2 x2 + + an xn = b; ∀ai , b ∈ Z (14) không đồng thời 0, i = 1, 2, , n Trường hợp , b ∈ Q, i = 1, 2, , n đưa trường hơp cách qui đồng mẫu số khử mẫu số chung Gọi d = (a1 , a2 , , an ) Nếu d ước b phương trình khơng có nghiệm ngun, d ước b phương trình có nghiệm ngun (theo định lý tiếng lý tthuyết số học) Nếu phương trình có nghiệm d = ta vế phương trình cho d Khi d = Khơng làm tính tổng qt ta xét ước chung lớn số dương (a) Nếu = 0, ∀i = 1, 2, , n phương trình có nghiệm ngun tổng qt là: xi = ki ∈ Z, i = 1, 2, , n b = (Đây trường hợp nghiệm tổng qt phương trình có n-lần bất định) khơng có nghiệm b = (b) Nếu ∃i, trình là: i n cho = ±1 nghiệm tổng quát phương n xi = −ai ( aj kj − b) xs = ks ∈ Z, s ∈ {1, 2, , n} \ {i} j=1 j=i Thuật tốn viết đây: Đầu vào: phương trình: a1 x1 + a2 x2 + + an xn = b (15) 28 , b ∈ Z, = ±1, i = 1, 2, , n với tất không đồng thời (a1 , , an ) = Đầu ra: Nghiệm nguyên tổng quát phương trình Thuật tốn: Bước h:=1; p:=1 Bước Tính {|r| , r = (modaj ), |r| < |aj |} xác định r cặp (i,j) i,j n mà r đạt giá trị nhỏ ( có nhiều kết giống ta chọn kết đó) Bước Nếu |r|  = ta thực bước n    xi = r(−aj th − as xs + b)     s=1  s∈{i,j} / Nếu |r| = n  r − ai − r    b) a x + x = r(a t + j i h s s   a a j j  s=1  s∈{i,j} / (A) Thay giá trị xác định ẩn số vào tất biểu thức (p), p=1,2, ( có thể) (B) Từ biểu thức cuối (p) có thuật toán thay vào tất biểu thức (p − 1), (p − 2), (C)Mỗi biểu thức bắt đầu theo thứ tự từ (p − 1) phải áp dụng giống cách làm (B): sau (p − 2), (p − 3), tương ứng (D) Viết giá trị ẩn xi , i = 1, 2, , n từ phương trình ban đầu Thay tham số nguyên k1 , k2 , kn−1 tương ứng với ẩn vế phải Dừng − r Bước Viết biểu thức (p): xj = th − xi aj Bước Gán: xj := th ; := r; h := h + p := p + Các hệ số biến khác không thay đổi, quay lại bước 29 Tính đắn thuật tốn: Hãy xét phương trình tuyến tính a1 x1 + a2 x2 + + an xn = b, , b ∈ Z, = ±1, i = 1, 2, , n Ta có tính chất sau 2.2.8 Bổ đề Tập M = {|r| , r = (modaj ), < |r| < |aj |} có giá trị nhỏ Chứng minh Hiển nhiên M ⊂ N ∗ M hữu hạn phương trình có hữu hạn hệ số: n, có tối đa n2 cặp (ai , aj ) Ta có M = ∅ Thật vậy: M = ∅ ⇔ ≡ 0(modaj )∀i, j = 1, 2, , n Điều xảy |ai | = |aj | , ∀i, j = 1, 2, , n tương đương với (a1 , , an ) = , ∀i = 1, 2, , n Nhưng giả thiết (a1 , , an ) = (Vì giả sử (a1 , , an ) = d = ta chia vế phương trình cho d) Kéo theo = 1, i = 1, 2, , n Mâu thuẫn với giả thiết = ±1, ∀i = 1, 2, , n Vậy M = ∅ hữu hạn Do M có giá trị nhỏ 2.2.9 Bổ đề Nếu |r| = M |r| < |ai | , ∀i = 1, 2, , n i,j n Chứng minh Ta giả sử ngược lại: ∃i0 , i0 |r| n Xét ap0 , |ap0 | {|aj |} = |aj0 | = 1, 1 j n j0 n cho |r| p0 |ai0 | Khi n cho |aj | ap0 khơng chia hết cho aj0 Có hệ số phương trình,|aj0 | số nhỏ hệ số khơng (ngược lại điều có nghĩa (a1 , , an ) = a1 = ±1 trái với giả thiết), nữa, hệ số có giá trị tuyệt đối lớn |aj0 | khơng phải tất chia hết cho |aj0 | (Vì ta có (a1 , , an ) = aj0 = ±1) 30 Trái giả thiết (a1 , a2 , , an ) = ap = q0 ∈ Z ( phần số nguyên) r0 = ap0 − q0 aj0 ∈ Z Chúng ta Đặt aj có: ap0 = r0 ( mod aj0 ) ; < |r0 | < |aj0 | |r| Do tìm thấy |r0 | < |r| mâu thuẫn với định nghĩa giá trị nhỏ r Vì |r| < |ai | , ∀i = 1, 2, , n 2.2.10 Bổ đề Nếu |r| = minM = cặp số (i, j)  n    xi = r(−aj th − as ks + b)     s=1   s∈{i,j} /  n − r r −  xj = r(ai th + b) as ks +    a a j j  s=1   s∈{i,j} /    xs = ks , s ∈ {1, 2, , n} \ {i, j} nghiệm nguyên tổng quát phương trình (15) Chứng minh Đặt (x01 , x02 , , x0n ) nghiêm ngun riêng phương trình (15) Khi ∃ks = x0s ∈ Z, s = {1, 2, , n} \ {i, j} − r th = x0j + xi ∈ Z (vì − r ∈ M aj ) cho: aj n − r 0 xi = r(−aj (xj + xi ) − as x0s + b) = x0i aj s=1 s∈{i,j} / n xj = r(ai (x0j − r − r + xi ) + aj aj s=1 as x0s + r − b) = x0j aj s∈{i,j} / x0s , s xs = ks = ∈ {1, 2, , n} \ {i, j} Thay giá trị xi , i = 1, 2, n vào phương trình (15) ta đẳng thức 2.2.11 Bổ đề Giả sử |r| = 1và (i,j) cặp số mà r đạt giá trị nhỏ Hãy xét hệ phương trình tuyến tính sau: 31     a t + rxi +   j h n as x s = b s=1 s∈{i,j} / (16)   a −r   th = xj + i xi aj Khi xe = x0e , e = 1, 2, , n nghiệm nguyên riêng phương trình (15) − r xi xe = x0e , e ∈ {1, 2, , n} \ {j} th = t0h = x0j + aj nghiệm nguyên riêng phương trình (16) Chứng minh xe = x0e , e = 1, 2, , n nghiệm riêng phương trình (15) n n − r 0 as x0s + aj (x0j + ae xe = b ⇔ xi ) + rx0i = b aj s=1 e=1 s∈{i,j} / ⇔ aj t0h + rx0i + n s=1 s∈{i,j} / as x0s = b t0h = x0j + − r xi ∈ Z aj ⇔ xe = x0e , e ∈ {1, 2, , n} \ {j} th = t0h nghiệm nguyên riêng phương trình (16) 2.2.12 Bổ đề Thuật tốn hữu hạn Chứng minh Khi |r| = thuật tốn dừng bước Chúng ta xét trường hợp |r| = Theo định nghĩa r,|r| ∈ N ∗ Ta r nhận giảm sau vịng lặp Giả sử đầu ta tiên nhận r1 Nếu |r1 | = làm Bước 4, sau Bước Theo Bổ đề2.2.9, |r1 | < |ai | , ∀i = 1, 2, , n Bây ta làm theo thuật toán lần thứ hai, lần cho phương trình (theo Bước 5) r1 thay cho Tiếp tục, theo Bổ đề2.2.9, |r| viết |r2 | có tính chất |r2 | < |r1 | Ta có |r| = |r| |r| < ∞, |r| = 1, theo thuật tốn lần ta có |r| < |r1 | tiếp tục Do thuật tốn hữu hạn bước 32 Tính đắn thuật tốn: Thuật tốn tính nghiệm tổng qt phương trình tuyến tính Chứng minh Theo Bổ đề 2.2.12 thuật toán hữu hạn Từ Bổ đề2.2.8 cho thấy tập M có gá trị nhỏ nhất, bước thuật tốn có nghĩa Khi |r| = hiển thị Bổ đề2.2.10 Bước thuật tốn cho ta tìm nghiệm ngun tổng quát phương trình Trong Bổ đề2.2.11 cho thấy |r| = thay bước bước giới thiệu phương trình ban đầu, nghiệm ngun tổng qt khơng thay đổi Đó là, ta từ phương trình ban đầu đến hệ phương trình tuyến tính có nghiệm tổng qt phương trình ban đầu Biến h biến đếm biến đưa ra, sử dụng để phân tích hệ hệ hai phương trình tuyến tính Biến p biến đếm thay biến (biểu thức, thời điểm cho biến cố định) Khi phương trình ban đầu khai triển tới |r| = 1, ta thực theo cách ngược lại, tức để đưa nghiệm nguyên tổng quát Cách đảo ngược hướng dẫn bước nhỏ 3(A), 3(B), 3(C) Ở bước nhỏ 3(D) viết lại nghiệm tổng quát dạng: xi = fi (k1 , , kn−1 ), i = 1, 2, , n , fi hàm tuyến tính với hệ số ngun “Nếu có thể” cho thấy thay khơng phải lúc Nhưng phải làm tất phép thay Chú ý: Thuật tốn trước dễ dàng đưa vào chương trình máy tính 2.2.13 Ví dụ Giải phương trình sau: 7x1 − 10x2 + 17x3 = 14 33 Giải: Áp dụng bước thuật toán, với a1 = 7, a2 = −10, a3 = 17, b = ta có: Bước Đặt h = 1, p = Bước {|r| , r ≡ a1 (moda2 ), |r| < |a2 |} = {|r| , r ≡ 7(mod − 10), |r| < |−10|} =3 (vì = -10.1 + nên r = 3) {|r| , r ≡ a2 (moda1 ), |r| < |a2 |} = {|r| , r ≡ −10(mod7), |r| < 7} =3 -10 = 7(-1) + (-3) nên r = -3) {|r| , r ≡ a1 (moda3 ), |r| < |a3 |} = {|r| , r ≡ 7(mod17), |r| < 17} (vì = 17.0 + nên r = 7) {|r| , r ≡ a3 (moda1 ), |r| < |a1 |} = =7 {|r| , r ≡ 17(mod7), |r| < 7} =3 (vì 17 = 7.2 + nên r = 3) {|r| , r ≡ a2 (moda3 ), |r| < |a3 |} = {|r| , r ≡ −10(mod17), |r| < 17} =7 (vì -10 = 17(-.1) + nên r = 7) {|r| , r ≡ a3 (moda2 ), |r| < |a2 |} = {|r| , r ≡ 17(mod − 10), |r| < 10} =3 (vì 17 = -10(-2) + (-3) nên r = -3) Vậy {|r| , r ≡ (modaj ), |r| < |aj |} = i,j Ta chọn cặp (i,j) tùy ý mà thõa mãn |r| = , chẳng hạn i = 2, j = 1, r = -3 Bước |−3| = ta chuyển sang thực bước Bước x1 = t1 − a2 −r a1 x2 = t1 − −10−(−3) x2 = t1 + x2 (*) Bước Gán: x1 = t1 ; h = a2 = −3; p = Ta có phương trình mới: 7t1 − 3x2 + 17x3 = 14 Quay lại bước Ta có a1 = 7, a2 = −3, a3 = 17, b = 14 Bước 34 {|r| , r ≡ a1 (moda2 ), |r| < |a2 |} = {|r| , r ≡ 7(mod − 3), |r| < 3} =1 (vì = -3(-2) + nên r = 1) {|r| , r ≡ a2 (moda1 ), |r| < |a1 |} = {|r| , r ≡ −3(mod7), |r| < 7} =3 (vì -3 = 7.0 + (-3) nên r = -3) {|r| , r ≡ a1 (moda3 ), |r| < |a3 |} = {|r| , r ≡ 7(mod17), |r| < 17} =7 (vì = 17.0 + nên r = 7) {|r| , r ≡ a3 (moda1 ), |r| < |a1 |} = {|r| , r ≡ 17(mod7), |r| < 7} =3 (vì 17 = 7.2 + nên r = 3) {|r| , r ≡ a2 (moda3 ), |r| < |a3 |} = {|r| , r ≡ −3(mod17), |r| < 17} =3 (vì -3 = 17.0 + (-3) nên r = -3) {|r| , r ≡ a3 (moda2 ), |r| < |a2 |} = {|r| , r ≡ 17(mod − 3), |r| < 3} =1 (vì 17 = -3(-6) + (-1) nên r = -1) Vậy {|r| , r ≡ (modaj ), |r| < |aj |} = Ta chọn cặp (i, j) = (3, 2) Khi r = -1; i = 3, j = (Ta tránh chọn cặp (i,j) mà i j nhận giá trị x1 gán trên) Bước |−1| = x3 = (−1)(−(−3)t2 − 7t1 + 14) = −3t2 + 7t1 − 14 −1 − 17 17 − (−1) 7t1 + 14) = −17t2 + 42t1 − 84 x2 = (−1)(17t2 + −3 −3 (A) Thay giá trị x2 vào biểu thức (*) x1 ta có: x1 = t1 + x2 = t1 + (−17t2 + 42t1 − 84) ⇒ x1 = −17t2 + 43t1 − 84 (D) Ta có:  x1 = 43t1 − 17t2 − 84    x2 = 42t1 − 17t2 − 84    x3 = 7t1 − 3t2 − 14 Thay t1 , t2 k1 , k2 tương ứng ta thu nghiệm nguyên tổng quát phương trình ban đầu: 35  x1 = 43k1 − 17k2 − 84    x2 = 42k1 − 17k2 − 84    x3 = 7k1 − 3k2 − 14 (**) Với tham số nhận giá trị nguyên Thử lại: Thay (**) vào phương trình ban đầu ta có: 7(43k1 − 17k2 − 84) − 10(42k1 − 17k2 − 84) + 17(7k1 − 3k2 − 14) = 14 (đúng với ∀ki ∈ Z, i = 1, 2, , n ) 36 KẾT LUẬN Luận văn trình bày nội dung sau: Khái niệm lý thuyết chia hết vành số nguyên, bao gồm: Quan hệ chia hết, phép chia có dư, định lý phép chia có dư, ước chung lớn nhất, thuật tốn Euclide, đồng dư thức Trình bày hai thuật tốn tìm nghiệm ngun phương trình Diophatine tuyến tính Chứng minh tính hữu hạn tính đắn thuật tốn đưa số ví dụ minh họa 37 TÀI LIỆU THAM KHẢO Danh mục tài liệu tham khảo luận văn gồm tài liệu sau, tài liệu [3] Tiếng Việt [1] Phan Huy Khải (2009), Phương trình nghiệm nguyên, Nhà xuất Giáo Dục [2] Hà Huy Khoái (2006), Số học, Nhà xuất Giáo Dục Tiếng Anh [3] F.Smarandache (2007), Integer algorithms to solve Diophantine linear equations and systems, Source:arXiv [4] F Smarandache (1979), Whole number solution of equations and systems of equations – part of the diploma thesis, University of Craiova [5] Schrijver (1986), Theory of linear and integer programming, John Wile Sons, New York ... CHƯƠNG THUẬT TỐN TÌM NGHIỆM NGUN CỦA PHƯƠNG TRÌNH DIOPHANTINE TUYẾN TÍNH Chúng tơi trình bày hai thuật tốn tìm nghiệm ngun phương trình Diophantine tuyến tính đưa ví dụ minh họa 2.1 Nghiệm nguyên phương. .. 13 Thuật tốn tìm nghiệm ngun phương trình Diophantine tuyến tính 15 2.1 Nghiệm ngun phương trình Diophantine tuyến tính 15 2.2 Các thuật tốn tìm nghiệm ngun Dophantine tuyến tính 20... tổng quát phương trình tuyến tính khơng nghiệm ngun tổng qt phương trình tuyến tính tương ứng cộng với nghiệm nguyên riêng phương trình tuyến tính khơng n−1 cij kj , i = 1, 2, , n nghiệm nguyên

Ngày đăng: 25/08/2021, 16:22

Mục lục

  • Muc luc

  • M u

  • Kin thc chun bi

    • Quan h chia ht

    • Phép chia có d

    • c chung ln nht

    • Ðng d thc

    • Thut toán tìm nghim nguyên cua phng trình Diophantine tuyn tính

      • Nghim nguyên cua phng trình Diophantine tuyn tính

      • Các thut toán tìm nghim nguyên cua Dophantine tuyn tính

      • Kt lun

      • Tài liu tham khao

Tài liệu cùng người dùng

Tài liệu liên quan