Деление на ноль - Division by zero

График, показывающий схематическое представление пределов, стремящихся к бесконечности
Функция у = 1/Икс. В качестве Икс приближается к 0 справа, у приближается к бесконечности. В качестве Икс приближается к 0 слева, у приближается к отрицательной бесконечности.

В математика, деление на ноль является разделение где делитель (знаменатель) равен нуль. Такое деление формально можно выразил так как а/0 где а - делимое (числитель). В обычной арифметике это выражение не имеет значения, поскольку нет числа, которое при умножении на 0 дает а (при условии а ≠ 0), поэтому деление на ноль равно неопределенный. Поскольку любое число, умноженное на ноль, равно нулю, выражение 0/0 также не определено; когда это форма предел, это неопределенная форма. Исторически сложилось так, что одна из самых ранних записанных ссылок на математическую невозможность присвоения значения а/0 содержится в Джордж Беркли критика исчисление бесконечно малых в 1734 г. в Аналитик («призраки ушедшего количества»).[1]

Есть математические конструкции, в которых а/0 определено для некоторых а например, в Сфера Римана и проективно расширенная действительная линия; однако такие структуры не удовлетворяют всем обычным правилам арифметики ( аксиомы поля ).

В вычисление, а ошибка программы может возникнуть в результате попытки разделить на ноль. В зависимости от среды программирования и типа номера (например, плавающая точка, целое число ) делится на ноль, он может генерировать положительная или отрицательная бесконечность посредством IEEE 754 стандарт с плавающей запятой, создайте исключение, создать сообщение об ошибке, вызовет завершение программы, вызовет специальный не-число ценить,[2] или крушение.

Элементарная арифметика

Когда разделение объясняется на элементарная арифметика уровень, это часто рассматривается как разделение набор объектов на равные части. В качестве примера рассмотрим наличие десяти файлов cookie, и эти файлы cookie должны быть распределены поровну между пятью людьми за столом. Каждый получит 10/5 = 2 куки. Точно так же, если есть десять файлов cookie и только один человек за столом, этот человек получит 10/1 = 10 файлов cookie.

Итак, для деления на ноль, какое количество файлов cookie получает каждый человек, когда 10 файлов cookie равномерно распределяются среди 0 человек за столом? В вопросе можно указать определенные слова, чтобы выделить проблему. Проблема с этим вопросом - «когда». Нет возможности никому раздать 10 файлов cookie. Так 10/0, по крайней мере, в элементарной арифметике, считается либо бессмысленным, либо неопределенным.

Если есть, скажем, 5 файлов cookie и 2 человека, проблема в «равномерном распределении». В любом целочисленном разделении 5 элементов на 2 части либо одна из частей раздела будет иметь больше элементов, чем другая, либо будет остаток (написано как 5/2 = 2 r1). Или проблему с 5 файлами cookie и двумя людьми можно решить, разрезав одно печенье пополам, что вводит идею фракции (5/2 = 21/2). С другой стороны, проблема с 5 файлами cookie и 0 людьми не может быть решена никаким способом, сохраняющим значение слова «разделяет».

В элементарная алгебра, другой способ взглянуть на деление на ноль состоит в том, что деление всегда можно проверить с помощью умножения. Принимая во внимание 10/0 пример выше, установка Икс = 10/0, если Икс равно десяти, деленному на ноль, тогда Икс умножить на ноль равно десять, но нет Икс что при умножении на ноль дает десять (или любое другое число, кроме нуля). Если вместо Икс = 10/0, Икс = 0/0, то каждые Икс отвечает на вопрос "какое число Икс, умноженное на ноль, дает ноль? '

Ранние попытки

В Брахмаспхунасиддханта из Брахмагупта (ок. 598–668) - самый ранний текст, посвященный нуль как самостоятельное число и для определения операций с нулем.[3] Автор не мог объяснить деление на ноль в своих текстах: его определение, как легко доказать, приводит к алгебраическим абсурдам. Согласно Брахмагупте,

Положительное или отрицательное число при делении на ноль представляет собой дробь, знаменателем которой является ноль. Ноль, деленный на отрицательное или положительное число, либо равен нулю, либо выражается в виде дроби с нулем в числителе и конечной величиной в знаменателе. Ноль деленный на ноль равен нулю.

В 830 г. Махавира безуспешно пытался исправить ошибку Брахмагупты в своей книге в Ганита Сара Самграха: "Число не меняется при делении на ноль."[3]

Алгебра

Четыре основных операции - сложение, вычитание, умножение и деление - применительно к целым числам (положительным целым числам) с некоторыми ограничениями в элементарной арифметике используются в качестве основы для поддержки расширения области чисел, к которой они применяются. Например, чтобы можно было вычесть любое целое число из другого, область чисел должна быть расширена до всего набора целые числа чтобы включить отрицательные целые числа. Точно так же, чтобы поддерживать деление любого целого числа на любое другое, область чисел должна расширяться до рациональное число. Во время этого постепенного расширения системы счисления уделяется внимание тому, чтобы «расширенные операции», применяемые к старым числам, не давали других результатов. Грубо говоря, поскольку деление на ноль не имеет значения (есть неопределенный) в настройке целого числа, это остается верным, поскольку настройка расширяется до настоящий или даже сложные числа.

По мере того, как область чисел, к которым могут применяться эти операции, расширяется, происходят также изменения в том, как эти операции рассматриваются. Например, в области целых чисел вычитание больше не считается базовой операцией, поскольку его можно заменить сложением чисел со знаком.[4] Точно так же, когда царство чисел расширяется и включает рациональные числа, деление заменяется умножением на определенные рациональные числа. В соответствии с этим изменением точки зрения вопрос «Почему мы не можем делить на ноль?» Превращается в «Почему у рационального числа не может быть нулевой знаменатель?». Чтобы точно ответить на этот пересмотренный вопрос, необходимо внимательно изучить определение рациональных чисел.

В современном подходе к построению поля действительных чисел рациональные числа появляются как промежуточный этап в развитии, основанном на теории множеств. Во-первых, натуральные числа (включая ноль) устанавливаются на аксиоматической основе, такой как Система аксиом Пеано а затем это расширяется до кольцо целых чисел. Следующим шагом является определение рациональных чисел с учетом того, что это должно выполняться только с использованием уже установленных наборов и операций, а именно сложения, умножения и целых чисел. Начиная с набора заказанные пары целых чисел, {(а, б)} с б ≠ 0, определим бинарное отношение на этом наборе (а, б) ≃ (c, d) если и только если объявление = до н.э. Показано, что это соотношение является отношение эквивалентности и это классы эквивалентности затем определяются как рациональные числа. Именно в формальном доказательстве того, что это отношение является отношением эквивалентности, требуется требование, чтобы вторая координата не равнялась нулю (для проверки транзитивность ).[5][6][7]

Приведенное выше объяснение может быть слишком абстрактным и техническим для многих целей, но если предположить существование и свойства рациональных чисел, как это обычно делается в элементарной математике, «причина» того, что деление на ноль недопустимо, скрыта от глаз. Тем не менее, в этой ситуации можно дать (нестрогое) обоснование.

Из свойств используемой нами системы счисления (т.е. целых чисел, рациональных чисел, действительных чисел и т. Д.) Следует, что если б ≠ 0 тогда уравнение а/б = c эквивалентно а = б × c. При условии, что а/0 это число c, тогда должно быть так а = 0 × c = 0. Однако единственное число c тогда должно было быть определено уравнением 0 = 0 × c, но каждое число удовлетворяет этому уравнению, поэтому мы не можем присвоить числовое значение 0/0.[8]

Деление как обратное умножению

Концепция, объясняющая разделение в алгебре состоит в том, что это обратное умножению. Например,[9]

поскольку 2 - это значение, для которого неизвестная величина в

правда. Но выражение

требует, чтобы значение неизвестной величины было найдено в

Но любое число, умноженное на 0, равно 0, и поэтому не существует числа, которое решает уравнение.

Выражение

требует, чтобы значение неизвестной величины было найдено в

Опять же, любое число, умноженное на 0, равно 0, и поэтому на этот раз каждое число решает уравнение вместо того, чтобы быть единственным числом, которое можно принять за значение 0/0.

В общем, одно значение не может быть присвоено дроби, знаменатель которой равен 0, поэтому значение остается неопределенным.

Заблуждения

Неотъемлемой причиной запрета деления на ноль является то, что, если бы это было разрешено, получалось бы много абсурдных результатов (т. Е. заблуждения ) возникнет. При работе с числовыми величинами легко определить, когда предпринимается незаконная попытка деления на ноль. Например, рассмотрим следующее вычисление.

С предположениями:

верно следующее:

Разделив обе стороны на ноль, получим:

В упрощенном виде это дает:

Ошибка здесь заключается в предположении, что деление 0 на 0 является допустимой операцией с теми же свойствами, что и деление на любое другое число.

Однако можно замаскировать деление на ноль в алгебраический аргумент[3] ведущий к недействительные доказательства что, например, 1 = 2 например следующие:[10]

Позволять 1 = Икс.
Умножить на Икс получить
Вычесть 1 с каждой стороны, чтобы получить
Разделите обе стороны на Икс − 1
что упрощает
Но с тех пор Икс = 1,

Замаскированное деление на ноль происходит, поскольку Икс − 1 = 0 когда Икс = 1.

Анализ

Расширенная реальная линия

На первый взгляд кажется возможным определить а/ 0 с учетом предел из а/б так как б приближается к 0.

Для любого положительного а, предел справа равен

однако предел слева равен

и так не определено (также не определен предел для отрицательных а).

Кроме того, нет очевидного определения 0/0, которое можно было бы вывести из рассмотрения предела отношения. Предел

не существует. Пределы формы

в котором оба ƒ(Икс) и грамм(Икс) приближаются к 0 как Икс приближается к 0, может равняться любому действительному или бесконечному значению или может не существовать вообще, в зависимости от конкретных функций ƒ и грамм. Эти и другие подобные факты показывают, что выражение 0/0 не может быть четко определенный как предел.

Формальные операции

А формальный расчет выполняется с использованием правил арифметики, без учета того, хорошо ли определен результат вычисления. Таким образом, иногда полезно подумать о а/ 0, где а ≠ 0, как . Эта бесконечность может быть положительной, отрицательной или беззнаковой, в зависимости от контекста. Например, формально:

Как и при любом формальном вычислении, могут быть получены неверные результаты. Логически строгие (в отличие от формальных) вычислений утверждают только то, что

Поскольку односторонние ограничения различны, двусторонний предел не существует в стандартных рамках действительных чисел. Также осталась дробь 1/0 неопределенный в расширенная реальная линия, поэтому он и

бессмысленны выражения.

Проективно расширенная действительная линия

Набор это проективно расширенная действительная линия, что является одноточечная компактификация реальной линии. Здесь означает беззнаковая бесконечность, бесконечная величина, которая не является ни положительной, ни отрицательной. Эта величина удовлетворяет , что необходимо в данном контексте. В этой структуре можно определить для ненулевого а, и когда а не является . Это естественный способ увидеть диапазон касательная функции и котангенс функции тригонометрия: загар (Икс) приближается к единственной бесконечно удаленной точке как Икс подходит либо или с любого направления.

Это определение приводит ко многим интересным результатам. Однако полученная алгебраическая структура не является поле, и не следует ожидать, что он будет вести себя как один. Например, не определено в этом продолжении реальной линии.

Сфера Римана

Набор это Сфера Римана, что имеет большое значение в комплексный анализ. Здесь тоже беззнаковая бесконечность или, как это часто называют в этом контексте, точка в бесконечности. Этот набор аналогичен проективно расширенной вещественной прямой, за исключением того, что он основан на поле из сложные числа. В сфере Римана и , но и не определены.

Расширенная строка неотрицательных действительных чисел

Отрицательные действительные числа можно отбросить и ввести бесконечность, что приведет к набору [0, ∞], где деление на ноль естественным образом определяется как а/ 0 = ∞ для положительногоа. Хотя это делает деление определенным в большем количестве случаев, чем обычно, во многих случаях вычитание остается неопределенным, потому что нет отрицательных чисел.

Высшая математика

Хотя деление на ноль не может быть разумно определено с помощью действительных чисел и целых чисел, его или аналогичные операции можно последовательно определять в других математических структурах.

Нестандартный анализ

в гиперреальные числа и сюрреалистические числа, деление на ноль по-прежнему невозможно, но деление на ненулевое бесконечно малые возможно.

Теория распределения

В теория распределения можно расширить функцию к распределению по всему пространству действительных чисел (фактически, используя Основные ценности Коши ). Однако не имеет смысла запрашивать "значение" этого распределения на уровне Икс = 0; сложный ответ относится к исключительная поддержка распределения.

Линейная алгебра

В матрица алгебра (или линейная алгебра в общем), можно определить псевдоразделение, задав а/б = ab+, в котором б+ представляет псевдообратный из б. Можно доказать, что если б−1 существует, тогда б+ = б−1. Если б равно 0, то b+ = 0.

Абстрактная алгебра

Любая система счисления, образующая коммутативное кольцо - например, целые числа, действительные числа и комплексные числа - могут быть расширены до рулевое колесо в котором всегда возможно деление на ноль; однако в таком случае «разделение» имеет несколько иное значение.[требуется разъяснение ]

Концепции, применяемые к стандартной арифметике, аналогичны концепциям более общих алгебраических структур, таких как кольца и поля. В поле каждый ненулевой элемент обратим относительно умножения; как и выше, деление создает проблемы только при попытке деления на ноль. Это также верно в отношении тело (который по этой причине называется делительное кольцо ). Однако в других кольцах деление на ненулевые элементы также может создавать проблемы. Например, кольцо Z/6Z целых чисел mod 6. Значение выражения должно быть решением Икс уравнения . Но на ринге Z/6Z, 2 - это делитель нуля. Это уравнение имеет два различных решения: Икс = 1 и Икс = 4, поэтому выражение является неопределенный.

В теории поля выражение это только сокращение для формального выражения ab−1, где б−1 является мультипликативным обратным б. Поскольку аксиомы поля гарантируют существование таких инверсий только для ненулевых элементов, это выражение не имеет смысла, когда б равно нулю. Современные тексты, определяющие поля как особый тип кольца, включают аксиому 0 ≠ 1 для полей (или его эквивалента), так что нулевое кольцо исключено из поля. В нулевом кольце возможно деление на ноль, что показывает, что других аксиом поля недостаточно, чтобы исключить деление на ноль в поле.

Компьютерная арифметика

Большинство калькуляторов, таких как этот Инструменты Техаса ТИ-86, остановит выполнение и отобразит сообщение об ошибке, когда пользователь или запущенная программа попытается разделить на ноль.
Деление на ноль на Android 2.2.1 калькулятор показывает символ бесконечности.

В Стандарт IEEE с плавающей запятой, поддерживается практически всеми современными единицы с плавающей запятой, указывает, что каждый плавающая точка арифметическая операция, включая деление на ноль, дает четко определенный результат. Стандарт поддерживает подписанный ноль, а также бесконечность и NaN (не число). Есть два нуля: +0 (положительный ноль) и −0 (отрицательный ноль), и это устраняет любую двусмысленность при разделении. В IEEE 754 арифметика, а ÷ +0 положительная бесконечность, когда а положительная, отрицательная бесконечность, когда а отрицательно, и NaN, когда а = ± 0. Знаки бесконечности меняются при делении на −0 вместо.

Обоснованием этого определения является сохранение знака результата в случае арифметическое истощение.[11] Например, при вычислении с одинарной точностью 1 / (Икс/ 2), где Икс = ±2−149, вычисление Икс/ 2 переполняется и дает ± 0 со знаком соответствия Икс, и результат будет ± ∞ с соответствием знаков Икс. Знак будет соответствовать точному результату ± 2150, но величина точного результата слишком велика для представления, поэтому бесконечность используется для обозначения переполнения.

Целочисленное деление на ноль обычно обрабатывается иначе, чем деление с плавающей запятой, поскольку для результата нет целочисленного представления. Некоторые процессоры генерируют исключение когда делается попытка разделить целое число на ноль, хотя другие просто продолжат и сгенерируют неверный результат для деления. Результат зависит от того, как реализовано деление, и может быть либо нулем, либо иногда максимально возможным целым числом.

Из-за неправильных алгебраических результатов приписывания любого значения делению на ноль многие компьютеры языки программирования (в том числе используемые калькуляторы ) явно запрещает выполнение операции и может преждевременно остановить программу, которая пытается ее выполнить, иногда сообщая об ошибке «Делить на ноль». В этих случаях, если требуется какое-то особое поведение для деления на ноль, условие должно быть явно проверено (например, с использованием если заявление ). Некоторые программы (особенно те, которые используют арифметика с фиксированной точкой там, где нет специального оборудования с плавающей запятой) будет использовать поведение, аналогичное стандарту IEEE, используя большие положительные и отрицательные числа для аппроксимации бесконечностей. В некоторых языках программирования попытка разделить на ноль приводит к неопределенное поведение. Графический язык программирования Scratch 2.0 и 3.0 Используемый во многих школах, возвращает Infinity или -Infinity в зависимости от знака дивиденда.

В два дополнения В арифметике попытки разделить наименьшее целое число со знаком на -1 сопровождаются аналогичными проблемами и обрабатываются с тем же диапазоном решений, от явных условий ошибки до неопределенное поведение.

Большинство калькуляторов либо возвращают ошибку, либо сообщают, что 1/0 не определено; однако некоторые TI и HP графические калькуляторы оценят (1/0)2 до ∞.

Microsoft Math и Mathematica вернуть ComplexInfinity за 1/0. Клен и SageMath возвращает сообщение об ошибке для 1/0 и бесконечность для 1 / 0,0 (0,0 указывает этим системам использовать арифметику с плавающей запятой вместо алгебраической арифметики).

Некоторые современные калькуляторы позволяют деление на ноль в особых случаях, когда это будет полезно студентам и, предположительно, будет понятно математикам в контексте. Некоторые калькуляторы, онлайн Desmos калькулятор является одним из примеров, разрешить арктангенс (1/0). Студентов часто учат, что функция обратного котангенса арккотангенс, следует вычислить, взяв арктангенс обратной величины, поэтому калькулятор может разрешить арктангенс (1/0), давая результат , который является правильным значением арккотангенса 0. Математическое обоснование состоит в том, что предел, когда x стремится к нулю арктангенса 1 / x, равен .

Исторические случайности

  • 21 сентября 1997 г. ошибка деления на ноль в "Диспетчере удаленных баз данных" на борту USS Yorktown (CG-48) сбил все машины в сети, в результате чего вышла из строя силовая установка корабля.[12][13]

Смотрите также

Рекомендации

Примечания

  1. ^ Кахори, Флориан (1929), «Нелепости из-за деления на ноль: историческая справка», Учитель математики, 22 (6): 366–368, JSTOR  27951153.
  2. ^ «Документация Perl BigInt». Perl :: doc. Perl 5 Porters. Архивировано из оригинал 26 сентября 2019 г.. Получено 1 марта 2020.
  3. ^ а б c Каплан, Роберт (1999). Ничто из того, что есть: естественная история нуля. Нью-Йорк: Издательство Оксфордского университета. стр.68–75. ISBN  978-0-19-514237-2.
  4. ^ Кляйн 1925, п. 24
  5. ^ Шумахер 1996, п. 149
  6. ^ Гамильтон 1982, п. 19
  7. ^ Хенкин и др. 2012 г., п. 292
  8. ^ Связка 1997, п. 14
  9. ^ Приндл, Энтони; Приндл, Кэти (2009). E-Z Math (переработанная ред.). Образовательная серия Бэррона. п.35. ISBN  978-0-7641-4132-4. Выдержка со страницы 35
  10. ^ Связка 1997, п. 15
  11. ^ Коди, У. Дж. (Март 1981 г.). «Анализ предложений по стандарту с плавающей точкой». Компьютер. 14 (3): 65. Дои:10.1109 / C-M.1981.220379. При должной осторожности, чтобы быть уверенным, что алгебраические знаки не определяются ошибкой округления, аффинный режим сохраняет отношения порядка при устранении переполнения. Таким образом, например, отрицательное число, обратное отрицательному числу, остается отрицательным.
  12. ^ "Потоплен Windows NT". Проводные новости. 1998-07-24.
  13. ^ Уильям Кахан (14 октября 2011 г.). «Отчаянно необходимые средства защиты от отладки больших вычислений с плавающей запятой в науке и технике» (PDF).

Источники

  • Банч, Брайан (1997) [1982], Математические заблуждения и парадоксы, Дувр, ISBN  978-0-486-29664-7
  • Кляйн, Феликс (1925), Элементарная математика с продвинутой точки зрения / Арифметика, алгебра, анализ, переведенный Hedrick, E.R .; Ноубл, К. А. (3-е изд.), Довер
  • Гамильтон, А. Г. (1982), Числа, множества и аксиомы, Издательство Кембриджского университета, ISBN  978-0521287616
  • Хенкин, Леон; Смит, Норман; Варино, Верн Дж .; Уолш, Майкл Дж. (2012), Повторное изучение элементарной математики, ООО «Литературное лицензирование», ISBN  978-1258291488
  • Патрик Суппес 1957 г. (Дуврское издание 1999 г.), Введение в логику, Dover Publications, Inc., Минеола, Нью-Йорк. ISBN  0-486-40687-3 (пбк.). Эта книга уже напечатана и легко доступна. Суппес §8.5 Проблема деления на ноль начинается так: «То, что в этом лучшем из всех возможных миров, даже в математике, не все к лучшему, хорошо иллюстрируется неприятной проблемой определения операции деления в элементарной теории арифметики» (стр. 163). В его §8.7 Пять подходов к делению на ноль он отмечает, что «... не существует однозначно удовлетворительного решения» (стр. 166)
  • Шумахер, Кэрол (1996), Глава нулевая: основные понятия абстрактной математики, Эддисон-Уэсли, ISBN  978-0-201-82653-1
  • Чарльз Сейф 2000, Ноль: Биография опасной идеи, Penguin Books, Нью-Йорк, ISBN  0-14-029647-6 (пбк.). Эта отмеченная наградами книга очень доступна. Наряду с увлекательной историей (для одних) отвратительного понятия, а для других - культурного достояния, он описывает, как ноль неправильно применяется в отношении умножения и деления.
  • Альфред Тарский 1941 (Дуврское издание 1995 г.), Введение в логику и методологию дедуктивных наук, Dover Publications, Inc., Минеола, Нью-Йорк. ISBN  0-486-28462-X (пбк.). §53 Тарского Определения, дефиниендум которых содержит знак идентичности обсуждает, как допускаются ошибки (по крайней мере, относительно нуля). Он заканчивает свою главу «(Обсуждение этой довольно сложной проблемы [ровно одно число, удовлетворяющее определению], здесь будет опущено *)» (стр. 183). Знак * указывает на Упражнение № 24 (стр. 189), в котором он просит доказательства следующего: «В разделе 53 определение числа« 0 »было приведено в качестве примера. Чтобы убедиться, что это определение не приводят к противоречию, ему должна предшествовать следующая теорема: Существует ровно одно число x такое, что для любого числа y выполняется: y + x = y"

дальнейшее чтение