эпохальное доказательство из сферы компьютерной науки, которое вызвало эффект домино в физике и математике / Хабр
Учёные-информатики вышли на новые рубежи в деле проверки решений задач вычислительными методами. При этом они нашли ответы на важнейшие открытые вопросы квантовой механики и чистой математики.
В 1935 году Альберт Эйнштейн, работая с Борисом Подольским и Натаном Розеном, исследовал возможность, открытую новыми законами квантовой физики: две частицы могут находиться в запутанном состоянии, когда их взаимосвязь не нарушают даже огромные расстояния.
В следующем году Алан Тьюринг сформулировал первую общую теорию вычислений, и доказал, что существуют задачи, которые никогда не смогут быть решены компьютерами.
Эти две идеи произвели революцию в тех областях наук, к которым они относятся. Кроме того, казалось, что они не имеют никакого отношения друг к другу. Но теперь доказательство MIP* = RE их скомбинировало, что привело к решению множества задач в сфере информатики, физики и математики.
Квантовые компьютеры производят вычисления, оперируя запутанными квантовыми битами (кубитами), а не классическими нулями и единицами. Новое доказательство указывает на то, что такие компьютеры, теоретически, могут быть использованы для проверки решений огромного количества задач. Связь между квантовой запутанностью и традиционными вычислениями стала для многих исследователей большой неожиданностью.
Мигель Наваскес (Miguel Navascués) занимается квантовой физикой в Институте квантовой оптики и квантовой информации в Вене. «Это было полным сюрпризом», — сказал он, комментируя доказательство.
Соавторы доказательства поставили перед собой цель определить границы подхода по проверке решений вычислительных задач. Этот подход включает в себя квантовую запутанность. Обнаружив эти границы, исследователи пришли к решению двух других задач, что явилось едва ли не побочным результатом их работы. Речь идёт о гипотезе Цирельсона в физике, касающейся математического моделирования квантовой запутанности, и связанной задачи в чистой математике — проблемы Конна в теории алгебр фон Неймана (проблемы вложения Конна).
В итоге же результаты применения доказательства вызвали в математике и физике нечто вроде эффекта домино.
«Все идеи относятся к одному и тому же периоду. Приятно видеть то, что они снова сошлись столь эффектным образом», — говорит Генри Юэнь (Henry Yuen) из Университета Торонто – один из соавторов доказательства. Помимо него в этой работе участвовали Чжэнфэн Джи (Zhengfeng Ji) из Технологического университета Сиднея, Джон Райт (John Wright) из Техасского университета в Остине, Ананд Натараджан (Anand Natarajan) и Томас Видик (Thomas Vidick) из Калифорнийского технологического института. Все пять учёных работают в сфере компьютерных наук.
Неразрешимые задачи
Тьюринг, ещё до появления компьютеров, заложил фундамент, на котором строятся размышления о вычислениях. И он, в то же время, показал, что существует определённая задача, которую, что доказуемо, компьютеры решить не могут. Это — так называемая проблема останова.
Обычно компьютерные программы получают что-то на вход и генерируют выходные данные. Но иногда они застревают в бесконечных циклах, а значит — никогда не останавливаются. Когда такое происходит, есть лишь один выход из сложившейся ситуации. По словам Генри Юэня, нужно вручную остановить программу. Нужно просто поставить точку в её работе.
Тьюринг доказал, что не существует универсального алгоритма, способного выяснить, будет ли программа когда-нибудь остановлена. Для того чтобы это узнать, надо запустить программу.
Генри Юэнь, Томас Видик, Чжэнфэн Джи, Ананд Натараджан, Джон Райт
«Вы прождали миллион лет, а программа не остановилась. Может, нужно просто подождать 2 миллиона лет? Нет способа сказать это заранее», — говорит Уильям Слофстра (William Slofstra), математик из Университета Уотерлу.
Тьюринг, с технической точки зрения, доказал, что задача останова неразрешима. Даже самый мощный компьютер, который можно себе представить, не способен с ней справиться.
После Тьюринга учёные-информатики начали классифицировать другие задачи по их сложности. Для решения более сложных задач требуется больше вычислительной мощности — больше процессорного времени и памяти. Это — исследование вычислительной сложности алгоритмов.
В итоге любая задача ставит перед исследователями два больших вопроса: «Насколько тяжело её решить? Какова сложность проверки того, что полученное решение является правильным?».
Проверка решения с помощью допроса
Если задачи сравнительно просты — их решения можно проверять самостоятельно. Но когда задачи становятся сложнее, даже проверка результатов их решения может оказаться невероятно сложным делом. Несмотря на это, в 1985 году учёные-компьютерщики решили, что можно сформировать уверенность в правильности ответа даже в том случае, если невозможно самостоятельно это подтвердить.
Метод проверки следует логике полицейского допроса.
Если подозреваемый рассказывает тщательно продуманную историю, то следователь, вероятно, не сможет просто взять и найти подтверждение каждой её детали. Но, задавая правильные вопросы, можно либо подловить подозреваемого на лжи, либо подтвердить правдивость его рассказа.
С точки зрения информатики, две стороны допроса представлены двумя компьютерами. Первый — это мощная вычислительная система, которая предлагает решение задачи. Его называют доказывателем. Второй — это уже не такое мощное устройство, которое задаёт доказывателю вопросы для определения того, правильным ли является предложенный им ответ. Этот компьютер называют верификатором.
Рассмотрим простой пример. Предположим, некто (верификатор) страдает цветовой слепотой. Кто-то другой (доказыватель) утверждает, что два шарика окрашены в разные цвета и ничем больше друг от друга не отличаются. Верификатор не может сам проверить это утверждение. Но, умно построив допрос, он, всё же, может узнать, так ли это на самом деле.
Для этого можно спрятать шарики за спиной и перемешать их. А потом — спросить доказывателя о том, в какой руке находится какой шарик. Если они и правда разные — доказыватель должен всегда отвечать на подобный вопрос правильно. А если же они имеют один и тот же цвет, то есть — выглядят совершенно одинаково, половина ответов доказывателя окажется неправильной.
Томас Видик говорит, что если гораздо больше половины ответов доказывателя оказываются правильным, то можно быть весьма сильно уверенным в том, что шарики имеют разные цвета.
Задавая доказывателю вопросы, можно проверить решения более широкого класса задач, чем можно проверить самостоятельно.
В 1988 году учёные-информатики рассмотрели ситуацию, в которой имеются два доказывателя, предлагающих решения для одной и той же задачи. В конце концов, если есть два подозреваемых, которых можно допросить, это упростит раскрытие преступления, или — проверку решения, так как их можно заставить играть друг против друга.
По словам Томаса Видика, это даёт верификатору больше влияния. Он проводит допрос, задаёт связанные вопросы, выполняет перекрёстную проверку ответов. Если подозреваемые говорят правду — их ответы должны соответствовать друг другу большую часть времени.
Если же они лгут — их ответы чаще будут расходиться.Аналогично, исследователи показали, что допрашивая два доказывателя раздельно, задавая им вопросы о найденных ими решениях, можно быстро верифицировать решения даже более обширного класса задач, чем в том случае, когда работают с одним доказывателем.
Исследования вычислительной сложности алгоритмов могут показаться чисто теоретическими, но они очень тесно связаны с реальным миром. Ресурсы, которые нужны компьютерам для решения задач и проверки решения — время и память — это физические ресурсы. По этой причине новые открытия в физике могут изменить подход к исследованиям вычислительной сложности.
Ананд Натараджан говорит, что если отойти от классической физической базы вычислений и выбрать что-то совсем другое, вроде квантовых механизмов, то в результате мы получим и новую теорию вычислительной сложности.
Новое доказательство — это конечный результат столкновения учёных-компьютерщиков 21 века с одной из самых странных идей физики прошлого века — с идеей квантовой запутанности.
Проблема Конна
Когда две частицы запутаны, они, на самом деле, не влияют друг на друга. Между их действиями нет причинно-следственной связи. Эйнштейн и его соавторы проработали эту идею в статье 1935 года. Впоследствии физики и математики попытались прийти к математическому способу описания того, что, на самом деле, означает квантовая запутанность.
Однако эти усилия привели к неоднозначным результатам. Учёные пришли к двум разным математическим моделям запутанности. При этом не было ясно то, являются ли эти модели эквивалентными друг другу.
Наличие такого вот потенциального диссонанса, кружным путём, привело к появлению важной проблемы в сфере чистой математики. Это — проблема Конна в теории алгебр фон Неймана. В конце концов, это сыграло роль некоей «зацепки», которой пять учёных-компьютерщиков воспользовались при выводе своего доказательства.
Первый способ моделирования квантовой запутанности заключался в восприятии частиц как объектов, пространственно изолированных друг от друга. Предположим, одна из таких частиц находится на Земле, а другая — на Марсе. Расстояние между ними — это то, что исключает причинную связь между ними (они каузально разделены). Это — то, что называется моделью тензорного произведения.
Но в некоторых ситуациях каузальное разделение сущностей не вполне очевидно. В результате математики пришли ко второму, более общему способу описания каузальной независимости.
Когда порядок, в котором выполняют две операции, не влияет на результат, операцию называют коммутативной: 3×2 — это то же самое, что 2×3. В этой второй модели частицы запутаны в том случае, когда их свойства коррелируют, но порядок, в котором производят измерения, значения не имеет. Можно произвести измерения над частицей A для того, чтобы спрогнозировать импульс частицы B, и наоборот. В любом случае результат будет одним и тем же. Это называют моделью запутанности коммутирующего оператора.
В обоих описаниях запутанности используются массивы чисел, называемые матрицами. Матрицы состоят из строк и столбцов. Модель тензорного произведения использует матрицы с конечным числом строк и столбцов. Модель коммутирующего оператора использует более общие объекты, которые функционируют как матрицы с бесконечным количеством строк и столбцов.
Со временем математики начали исследовать эти матрицы как объекты, представляющие самостоятельный интерес, никак не связанные с физическим миром. В русле этой работы математик Ален Конн (Alain Connes) высказал в 1976 году предположение, в соответствии с которым должна существовать возможность аппроксимировать множество матриц бесконечной размерности с помощью матриц конечной размерности. Это — одно из следствий проблемы Конна в теории алгебр фон Неймана.
В следующем десятилетии физик Борис Цирельсон сформулировал новую версию этой проблемы, которая вновь вернула её в область физики. Цирельсон предположил, что модели тензорного произведения и коммутирующего оператора примерно эквивалентны друг другу. Это утверждение имеет смысл, так как обе эти модели, теоретически, представляют собой два разных способа описания одного и того же физического явления. Последующая работа показала, что из-за связи между матрицами и физическими моделями, использующими их, задачи Конна и Цирельсона косвенно связаны: если решить одну, то будет решена и другая.
Но решение обеих этих задач пришло из совершенно неожиданного места.
Физика игр
В 1960-е годы физик Джон Белл придумал тест для определения того, является ли квантовая запутанность реальным физическим явлением, а не теоретическим понятием. В тесте использовалось нечто вроде игры, результаты которой позволяли узнать о том, действуют ли в ходе игры некие механизмы, не относящиеся к обычной физике.
Позже специалисты по информатике поняли, что этот тест, касающийся квантовой запутанности, может быть использован и как инструмент для верификации решений очень сложных задач.
Но, прежде чем двигаться дальше, давайте поговорим об игре. Представим, что есть два игрока: Алиса и Боб, а также — игровое поле размером 3×3. Ведущий назначает Алисе строку и предлагает ей ввести в каждую ячейку 0 или 1, причём так, чтобы их сумма дала бы нечётное число. Боб получает столбец, который надо заполнить нулями и единицами так, чтобы их сумма дала бы чётное число. Они выиграют в том случае, если поместят одно и то же число в то место, где строка и столбец пересекаются. Общаться им при этом нельзя.
В обычных обстоятельствах лучшее, на что они будут способны — это выигрывать в 89% случаев. Но если учесть фактор квантовой запутанности, то их шансы улучшаются.
Представим, что у Алисы и Боба имеются запутанные квантовые частицы. Они выполняют измерения своих частиц и используют результаты измерений для указания на то, что писать в каждой из ячеек — 0 или 1. Из-за того, что частицы запутаны, результаты измерений будут коррелировать друг с другом. А это означает и то, что и действия игроков будут взаимосвязаны. В результате окажется, что они смогут побеждать в игре всегда.
Если в той ячейке, где строка и столбец пересекаются, будут разные цифры — игра проиграна. Если одинаковые — выиграна
Итак, если оказывается, что два игрока удивительно удачно играют в эту игру, то можно сделать вывод о том, что они используют нечто, отличающееся от того, что способна дать классическая физика. Подобные «Белловские» эксперименты в наши дни называют «нелокальными» играми, имея в виду разделение игроков. Физики, на самом деле, проводят подобные игры в лабораториях.
Генри Юэнь говорит, что за прошедшие годы учёные провели эксперименты, доказавшие реальность этих пугающих явлений.
Как и при анализе любой игры, тут может понадобиться узнать о том, как часто игроки могут выиграть в нелокальной игре, учитывая то, что они играют так хорошо, как только могут. Например, в случае с пасьянсом, можно вычислить частоту возможных выигрышей того, кто играет идеально.
Но в 2016 году Уильям Слофстра доказал, что не существует общего алгоритма для вычисления точной максимальной вероятности выигрыша для всех нелокальных игр. В результате исследователи задались вопросом: можно ли хотя бы приблизительно подсчитать максимальный процент выигрышей?
Учёные-компьютерщики пришли к ответу, используя две вышеописанные модели квантовой запутанности. Алгоритм, который использует модель тензорного произведения, задаёт минимальное значение при приближённом вычислении максимальной вероятности выигрыша для всех нелокальных игр. Другой алгоритм, в котором используется модель коммутирующего оператора, задаёт максимальное значение.
Ответ, выдаваемый реализациями этих алгоритмов, тем точнее, чем дольше выполняется программа. Если гипотеза Цирельсона верна, и эти две модели эквивалентны, тогда нижняя и верхняя оценки должны приближаться к друг другу, превращаясь в единственное значение, представляющее приблизительную максимальную вероятность выигрыша.
Но если гипотеза Цирельсона не верна, и две модели не эквивалентны, то, по словам Генри Юэня, верхняя и нижняя оценка всегда будут разделены. И не будет способа рассчитать даже приблизительный процент выигрышей для нелокальных игр.
Пять исследователей в своей новой работе воспользовались рассуждениями о том, сходятся ли верхняя и нижняя оценки, и о том, истинна или ложна гипотеза Цирельсона. Сделали они это ради поиска ответа на вопрос о том, в каких ситуациях можно верифицировать решения вычислительных задач.
Запутанная помощь
В начале двухтысячных учёные-информатики начали задаваться вопросом о том, как изменится диапазон задач, решения которых можно верифицировать, если «допрашивать» два доказывателя, которые обладают запутанными частицами.
Большинство учёных полагало, что запутанность вредит верификации. В конце концов, двум «подозреваемым» будет легче согласовать ложные показания в том случае, если у них будет какой-то способ координировать ответы.
Но в течение следующих нескольких лет стало понятно, что истинным является противоположное утверждение: «допрашивая» доказыватели, у которых имеются запутанные частицы, можно верифицировать гораздо более обширный класс задач, чем при работе с доказывателями, у которых таких частиц нет.
Томас Видик говорит, что запутанность — это способ создания корреляций, которые, как кажется, могут помочь доказывателям лгать. Но, на самом деле, это явление можно использовать в своих интересах.
Для того чтобы понять то, как этим пользоваться, сначала нужно разобраться с почти сверхъестественным масштабом задач, решения которых можно верифицировать благодаря этой интерактивной процедуре.
Представьте себе граф — набор точек (вершин), соединённых линиями (гранями). Нужно узнать о том, удастся ли, используя три цвета, закрасить вершины так, чтобы в графе не было бы двух вершин, соединённых гранью и при этом окрашенных в один цвет. Если это возможно, то такой граф является «трёхцветным».
Если дать паре доказывателей очень большой граф, и они сообщат, что он является «трёхцветным», то можно задаться вопросом о том, есть ли способ верифицировать их ответ.
В случае с очень большими графами было бы невозможно проверить ответ напрямую. Вместо этого можно спросить у каждого из доказывателей о том, какой цвет имеет одна из двух соединённых вершин. Если каждый из них сообщит о разных цветах, и они будут давать подобные ответы каждый раз, когда их об этом спрашивают, у нас сформируется уверенность в том, что граф, и правда, является «трёхцветным».
Но даже эта стратегия допроса не сработает на огромных графах, в которых больше граней и вершин, чем атомов во вселенной. Даже постановка конкретного вопроса («Сообщи мне цвет вершины XYZ») становится неподъёмной проблемой для того, кто пытается проверить решение задачи. Объём данных, необходимый для того, чтобы просто задать имя конкретной вершины, больше, чем верификатор может хранить в доступной ему памяти.
Но квантовая запутанность делает возможной схему работы, при применении которой доказыватели сами формулируют вопросы.
«Верификатору не нужно ставить вопросы. Верификатор заставляет доказыватели самостоятельно формулировать эти вопросы и отвечать на них», — говорит Джон Райт.
Верификатору нужно, чтобы доказыватели сообщали бы о цветах соединённых вершин. Если вершины не соединены, тогда ответы на вопросы ничего не сообщат о том, является ли граф «трёхцветным» или нет. Другими словами, верификатору нужно, чтобы доказыватели задавали бы связанные вопросы. Один из доказывателей задаёт вопрос о вершине ABC, а второй — о вершине XYZ. Предполагается, что две вершины соединены, несмотря на то, что ни один из доказывателей не знает о том, о какой именно вершине «думает» другой. (Это похоже на то, как Алиса и Боб надеются записать одно и то же число в одну и ту же ячейку, несмотря на то, что ни один из них не знает о том, с какой строкой или с каким столбцом таблицы работает другой. )
Если два доказывателя полностью самостоятельно формулировали бы подобные вопросы, тогда не было бы механизма, позволяющего заставить их выбирать соединённые (коррелирующие) вершины, делая это так, чтобы позволить верификатору проверять их ответы. Но подобная корреляция — это именно то, чего позволяет достичь квантовая запутанность.
Томас Видик говорит, что они собираются использовать запутанность для передачи практически всех дел доказывателям. Учёные заставляют доказыватели самостоятельно выбирать вопросы.
В конце выполнения этой процедуры каждый из доказывателей сообщает цвет вершины. Верификатор проверяет — разные это цвета или нет. Если граф действительно является «трёхцветным» — доказыватели никогда не должны сообщать об одном и том же цвете.
По словам Генри Юэня, если граф является «трёхцветным», то доказыватели смогут убедить исследователя в том, что это действительно так.
Как оказалась, эта процедура верификации представляет собой ещё один пример нелокальной игры. Доказыватели «выигрывают» в том случае, если убеждают исследователя в том, что их решение является верным.
В 2012 году Томас Видик и Цуёси Ито (Tsuyoshi Ito) доказали, что можно играть во множество разнообразных нелокальных игр с использованием запутанных доказывателей для проверки решений. Это относится, как минимум, к тому же числу задач, которые можно проверить, опрашивая два классических компьютера. Таким образом, использование запутанных доказывателей не вредит верификации. В прошлом году Ананд Натараджан и Джон Райт доказали, что взаимодействие с запутанными доказывателями, на самом деле, расширяет класс задач, решения которых могут быть верифицированы.
Но учёные-компьютерщики не знали о полном спектре задач, решения которых могут быть проверены с использованием этого подхода. Сейчас же они об этом знают.
Эффект домино
В своей новой работе пять учёных доказали, что «допрос» запутанных доказывателей делает возможной верификацию решений нерешаемых задач, включая решение задачи останова.
Генри Юэнь говорит, что модели такого типа имеют невообразимые верифицирующие возможности.
Но задача останова нерешаема. И этот факт стал той движущей силой, которая привела к получению итогового доказательства.
Представьте, что вы передали программу паре запутанных доказывателей. Вы задали им вопрос о том, остановится ли когда-нибудь эта программа. Вы готовы верифицировать их ответы посредством некоей нелокальной игры. Доказыватели генерируют вопросы и «выигрывают» на основании скоординированности их ответов.
Если программа на самом деле остановится, то у доказывателей должна быть возможность выиграть в игре в 100% случаев. Это похоже на пример с графом — если он и правда «трёхцветный», то запутанные доказыватели никогда не должны сообщать об одном и том же цвете для связанных вершин. Если программа никогда не остановится, доказыватели должны выигрывать лишь по случайности — в 50% случаев.
Это значит, что если некто попросит вас определить приблизительную максимальную вероятность выигрыша для конкретной нелокальной игры, то вам сначала придётся решить задачу останова. Но решить эту задачу невозможно. Это означает, что нахождение приблизительного максимального уровня вероятности выигрыша для нелокальных игр так же, как и для задачи останова, невозможно.
А это, в свою очередь, значит, что гипотеза Цирельсона ложна: две модели квантовой запутанности не эквивалентны. Если бы они были эквивалентны, то можно было бы свести нижнюю и верхнюю оценку к одному и тому же значению и вычислить приблизительную максимальную вероятность выигрыша.
Давид Перес-Гарсиа (David Pérez-García) из Мадридского университета Комплутенсе говорит, что не может существовать такого алгоритма, в результате две [модели] должны быть разными.
Новая работа доказывает то, что класс задач, решения которых можно верифицировать с помощью запутанных квантовых доказывателей, класс, называемый MIP*, в точности равен классу задач, которые не сложнее задачи останова — классу RE. В заголовке работы имеется сжатое указание на это: «MIP* = RE».
В ходе вывода доказательства того, что два класса сложности равны, учёные доказали ложность гипотезы Цирельсона, что, благодаря ранее проведённой работе, означает то, что гипотеза Конна также ложна.
Исследователи, работающие в соответствующих областях, были ошеломлены тем, что решения столь масштабных задач были получены благодаря доказательству из сферы компьютерной науки, которое, как кажется, не связано с математикой и с физикой.
Мигель Наваскес говорит, что если бы увидел статью с заголовком MIP* = RE, то не подумал бы о том, что у неё есть что-то общее с его работой. Он был соавтором более ранней работы, связывающей гипотезы Цирельсона и Конна. Для него это стало полным сюрпризом.
Квантовые физики и математики только начинают осваивать новое доказательство. До этого математиков интересовал вопрос о том, могут ли они аппроксимировать матрицы бесконечной размерности, используя вместо них большие матрицы конечной размерности. Теперь, благодаря тому, что доказана ложность гипотезы Конна, они знают о том, что сделать этого нельзя.
«Их результаты указывают на то, что это невозможно», — сказал Уильям Слофстра.
Учёные из сферы компьютерной науки не стремились к анализу гипотезы Конна. И они, в результате, находятся не в самом лучшем положении для объяснения возможных последствий решения этой задачи.
«Лично я — не математик. Я не очень хорошо понимают исходную формулировку гипотезы Конна», — говорит Ананд Натараджан.
Он с соавторами ожидает, что математики переведут новые результаты на свой язык. В публикации, где сообщается о доказательстве, Томас Видик пишет: «Я не сомневаюсь в том, что в итоге теория сложности вычислений не понадобится для получения чисто математических результатов».
Тем не менее, когда другие исследователи знакомятся с доказательством, путь исследования, благодаря которому удалось на него выйти, подходит к концу. Более трёх десятилетий учёные-компьютерщики просто пытались узнать, как далеко их может завести интерактивная верификация решений задач. Теперь перед ними лежит ответ, в форме длинной статьи с простым заголовком и с отголосками идей Тьюринга.
«Есть множество работ, авторы которых лишь задаются вопросом о том, каковы возможности процедуры верификации, использующей два запутанных квантовых доказывателя. Теперь мы знаем о том, какой мощью обладает эта процедура. Эта история подошла к концу», — говорит Ананд Натараджан.
Уважаемые читатели! Что значит доказательство MIP* = RE для той сферы, в которой работаете вы?
Регулярные выражения в Python: теория и практика
Рассмотрим регулярные выражения в Python, начиная синтаксисом и заканчивая примерами использования.
Примечание Вы читаете улучшенную версию некогда выпущенной нами статьи.
- Основы регулярных выражений
- Регулярные выражения в Python
- Задачи
Основы регулярных выражений
Регулярками называются шаблоны, которые используются для поиска соответствующего фрагмента текста и сопоставления символов.
Грубо говоря, у нас есть input-поле, в которое должен вводиться email-адрес. Но пока мы не зададим проверку валидности введённого email-адреса, в этой строке может оказаться совершенно любой набор символов, а нам это не нужно.
Чтобы выявить ошибку при вводе некорректного адреса электронной почты, можно использовать следующее регулярное выражение:
r'^[a-zA-Z0-9_. 0-9];
Для чего используются регулярные выражения
- для определения нужного формата, например телефонного номера или email-адреса;
- для разбивки строк на подстроки;
- для поиска, замены и извлечения символов;
- для быстрого выполнения нетривиальных операций.
Синтаксис таких выражений в основном стандартизирован, так что вам следует понять их лишь раз, чтобы использовать в любом языке программирования.
Примечание Не стоит забывать, что регулярные выражения не всегда оптимальны, и для простых операций часто достаточно встроенных в Python функций.
Хотите узнать больше? Обратите внимание на статью о регулярках для новичков.
Регулярные выражения в Python
В Python для работы с регулярками есть модуль re
. Его нужно просто импортировать:
import re
А вот наиболее популярные методы, которые предоставляет модуль:
re.match()
re.search()
re.findall()
re.split()
re.sub()
re.compile()
Рассмотрим каждый из них подробнее.
re.match(pattern, string)
Этот метод ищет по заданному шаблону в начале строки. Например, если мы вызовем метод match()
на строке «AV Analytics AV» с шаблоном «AV», то он завершится успешно. Но если мы будем искать «Analytics», то результат будет отрицательный:
import re result = re.match(r'AV', 'AV Analytics Vidhya AV') print result Результат: <_sre.SRE_Match object at 0x0000000009BE4370>
Искомая подстрока найдена. Чтобы вывести её содержимое, применим метод group()
(мы используем «r» перед строкой шаблона, чтобы показать, что это «сырая» строка в Python):
result = re. match(r'AV', 'AV Analytics Vidhya AV') print result.group(0) Результат: AV
Теперь попробуем найти «Analytics» в данной строке. Поскольку строка начинается на «AV», метод вернет None
:
result = re.match(r'Analytics', 'AV Analytics Vidhya AV') print result Результат: None
Также есть методы start()
и end()
для того, чтобы узнать начальную и конечную позицию найденной строки.
result = re.match(r'AV', 'AV Analytics Vidhya AV') print result.start() print result.end() Результат: 0 2
Эти методы иногда очень полезны для работы со строками.
re.search(pattern, string)
Метод похож на match()
, но ищет не только в начале строки. В отличие от предыдущего, search()
вернёт объект, если мы попытаемся найти «Analytics»:
result = re.search(r'Analytics', 'AV Analytics Vidhya AV') print result.group(0) Результат: Analytics
Метод search()
ищет по всей строке, но возвращает только первое найденное совпадение.
re.findall(pattern, string)
Возвращает список всех найденных совпадений. У метода findall()
нет ограничений на поиск в начале или конце строки. Если мы будем искать «AV» в нашей строке, он вернет все вхождения «AV». Для поиска рекомендуется использовать именно findall()
, так как он может работать и как re.search()
, и как re.match()
.
result = re.findall(r'AV', 'AV Analytics Vidhya AV') print result Результат: ['AV', 'AV']
re.split(pattern, string, [maxsplit=0])
Этот метод разделяет строку по заданному шаблону.
result = re.split(r'y', 'Analytics') print result Результат: ['Anal', 'tics']
В примере мы разделили слово «Analytics» по букве «y». Метод split()
принимает также аргумент maxsplit
со значением по умолчанию, равным 0. В данном случае он разделит строку столько раз, сколько возможно, но если указать этот аргумент, то разделение будет произведено не более указанного количества раз. Давайте посмотрим на примеры Python RegEx:
result = re.split(r'i', 'Analytics Vidhya') print result Результат: ['Analyt', 'cs V', 'dhya'] # все возможные участки.
result = re.split(r'i', 'Analytics Vidhya',maxsplit=1) print result Результат: ['Analyt', 'cs Vidhya']
Мы установили параметр maxsplit
равным 1, и в результате строка была разделена на две части вместо трех.
re.sub(pattern, repl, string)
Ищет шаблон в строке и заменяет его на указанную подстроку. Если шаблон не найден, строка остается неизменной.
result = re.sub(r'India', 'the World', 'AV is largest Analytics community of India') print result Результат: 'AV is largest Analytics community of the World'
re.compile(pattern, repl, string)
Мы можем собрать регулярное выражение в отдельный объект, который может быть использован для поиска. Это также избавляет от переписывания одного и того же выражения.
pattern = re.compile('AV') result = pattern.findall('AV Analytics Vidhya AV') print result result2 = pattern.findall('AV is largest analytics community of India') print result2 Результат: ['AV', 'AV'] ['AV']
До сих пор мы рассматривали поиск определенной последовательности символов. Но что, если у нас нет определенного шаблона, и нам надо вернуть набор символов из строки, отвечающий определенным правилам? Такая задача часто стоит при извлечении информации из строк. Это можно сделать, написав выражение с использованием специальных символов. Вот наиболее часто используемые из них:
Оператор | Описание |
---|---|
. | Один любой символ, кроме новой строки \n. |
? | 0 или 1 вхождение шаблона слева |
+ | 1 и более вхождений шаблона слева |
* | 0 и более вхождений шаблона слева |
\w | Любая цифра или буква (\W — все, кроме буквы или цифры) |
\d | Любая цифра [0-9] (\D — все, кроме цифры) |
\s | Любой пробельный символ (\S — любой непробельный символ) |
\b | Граница слова |
[. и $ | Начало и конец строки соответственно |
{n,m} | От n до m вхождений ({,m} — от 0 до m) |
a|b | Соответствует a или b |
() | Группирует выражение и возвращает найденный текст |
\t, \n, \r | Символ табуляции, новой строки и возврата каретки соответственно |
Больше информации по специальным символам можно найти в документации для регулярных выражений в Python 3.
Перейдём к практическому применению Python регулярных выражений и рассмотрим примеры.
Задачи
Вернуть первое слово из строки
Сначала попробуем вытащить каждый символ (используя .
)
result = re.findall(r'.', 'AV is largest Analytics community of India') print result Результат: ['A', 'V', ' ', 'i', 's', ' ', 'l', 'a', 'r', 'g', 'e', 's', 't', ' ', 'A', 'n', 'a', 'l', 'y', 't', 'i', 'c', 's', ' ', 'c', 'o', 'm', 'm', 'u', 'n', 'i', 't', 'y', ' ', 'o', 'f', ' ', 'I', 'n', 'd', 'i', 'a']
Для того, чтобы в конечный результат не попал пробел, используем вместо .
\w
.
result = re.findall(r'\w', 'AV is largest Analytics community of India') print result Результат: ['A', 'V', 'i', 's', 'l', 'a', 'r', 'g', 'e', 's', 't', 'A', 'n', 'a', 'l', 'y', 't', 'i', 'c', 's', 'c', 'o', 'm', 'm', 'u', 'n', 'i', 't', 'y', 'o', 'f', 'I', 'n', 'd', 'i', 'a']
Теперь попробуем достать каждое слово (используя *
или +
)
result = re.findall(r'\w*', 'AV is largest Analytics community of India') print result Результат: ['AV', '', 'is', '', 'largest', '', 'Analytics', '', 'community', '', 'of', '', 'India', '']
И снова в результат попали пробелы, так как *
означает «ноль или более символов». Для того, чтобы их убрать, используем +
:
result = re.findall(r'\w+', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'largest', 'Analytics', 'community', 'of', 'India']
Теперь вытащим первое слово, используя ^
:
result = re. , то мы получим последнее слово, а не первое:result = re.findall(r'\w+$', 'AV is largest Analytics community of India') print result Результат: [‘India’]Вернуть первые два символа каждого слова
Вариант 1: используя
\w
, вытащить два последовательных символа, кроме пробельных, из каждого слова:result = re.findall(r'\w\w', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'la', 'rg', 'es', 'An', 'al', 'yt', 'ic', 'co', 'mm', 'un', 'it', 'of', 'In', 'di']Вариант 2: вытащить два последовательных символа, используя символ границы слова (
\b
):result = re.findall(r'\b\w.', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'la', 'An', 'co', 'of', 'In']Вернуть домены из списка email-адресов
Сначала вернём все символы после «@»:
result = re.findall(r'@\w+', 'abc. [email protected], [email protected], [email protected], [email protected]') print result Результат: ['@gmail', '@test', '@analyticsvidhya', '@rest']Как видим, части «.com», «.in» и т. д. не попали в результат. Изменим наш код:
result = re.findall(r'@\w+.\w+', '[email protected], [email protected], [email protected], [email protected]') print result Результат: ['@gmail.com', '@test.in', '@analyticsvidhya.com', '@rest.biz']Второй вариант — вытащить только домен верхнего уровня, используя группировку —
( )
:result = re.findall(r'@\w+.(\w+)', '[email protected], [email protected], [email protected], [email protected]') print result Результат: ['com', 'in', 'com', 'biz']Извлечь дату из строки
Используем
\d
для извлечения цифр.result = re.findall(r'\d{2}-\d{2}-\d{4}', 'Amit 34-3456 12-05-2007, XYZ 56-4532 11-11-2011, ABC 67-8945 12-01-2009') print result Результат: ['12-05-2007', '11-11-2011', '12-01-2009']Для извлечения только года нам опять помогут скобки:
result = re. findall(r'\d{2}-\d{2}-(\d{4})', 'Amit 34-3456 12-05-2007, XYZ 56-4532 11-11-2011, ABC 67-8945 12-01-2009') print result Результат: ['2007', '2011', '2009']Извлечь слова, начинающиеся на гласную
Для начала вернем все слова:
result = re.findall(r'\w+', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'largest', 'Analytics', 'community', 'of', 'India']А теперь — только те, которые начинаются на определенные буквы (используя
[]
):result = re.findall(r'[aeiouAEIOU]\w+', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'argest', 'Analytics', 'ommunity', 'of', 'India']Выше мы видим обрезанные слова «argest» и «ommunity». Для того, чтобы убрать их, используем
\b
для обозначения границы слова:result = re.findall(r'\b[aeiouAEIOU]\w+', 'AV is largest Analytics community of India') print result Результат: ['AV', 'is', 'Analytics', 'of', 'India']Также мы можем использовать
^
внутри квадратных скобок для инвертирования группы:result = re. aeiouAEIOU ]\w+', 'AV is largest Analytics community of India') print result Результат: ['largest', 'community']Проверить формат телефонного номера
Номер должен быть длиной 10 знаков и начинаться с 8 или 9. Есть список телефонных номеров, и нужно проверить их, используя регулярки в Python:
li = ['9999999999', '999999-999', '99999x9999'] for val in li: if re.match(r'[8-9]{1}[0-9]{9}', val) and len(val) == 10: print 'yes' else: print 'no' Результат: yes no noРазбить строку по нескольким разделителям
Возможное решение:
line = 'asdf fjdk;afed,fjek,asdf,foo' # String has multiple delimiters (";",","," "). result = re.split(r'[;,\s]', line) print result Результат: ['asdf', 'fjdk', 'afed', 'fjek', 'asdf', 'foo']Также мы можем использовать метод
re.sub()
для замены всех разделителей пробелами:line = 'asdf fjdk;afed,fjek,asdf,foo' result = re. sub(r'[;,\s]',' ', line) print result Результат: asdf fjdk afed fjek asdf fooИзвлечь информацию из html-файла
Допустим, нужно извлечь информацию из html-файла, заключенную между
<td>
и</td>
, кроме первого столбца с номером. Также будем считать, что html-код содержится в строке.Пример содержимого html-файла:
1NoahEmma2LiamOlivia3MasonSophia4JacobIsabella5WilliamAva6EthanMia7MichaelEmilyС помощью регулярных выражений в Python это можно решить так (если поместить содержимое файла в переменную
test_str
):result = re.findall(r'\d([A-Z][A-Za-z]+)([A-Z][A-Za-z]+)', test_str) print result Результат: [('Noah', 'Emma'), ('Liam', 'Olivia'), ('Mason', 'Sophia'), ('Jacob', 'Isabella'), ('William', 'Ava'), ('Ethan', 'Mia'), ('Michael', 'Emily')]Адаптированный перевод «Beginners Tutorial for Regular Expressions in Python»
Понимание мира с помощью математики
Совокупность знаний и практики, известных как математика, основана на вкладе мыслителей на протяжении веков и со всего мира. Это дает нам возможность понять закономерности, количественно оценить отношения и предсказать будущее. Математика помогает нам понять мир — и мы используем мир, чтобы понять математику.
Мир взаимосвязан. Повседневная математика показывает эти связи и возможности. Чем раньше молодые учащиеся смогут применить эти навыки на практике, тем больше вероятность того, что мы останемся инновационным обществом и экономикой.
Алгебра может объяснить, как быстро загрязняется вода и сколько людей в странах третьего мира, пьющих эту воду, могут заболеть ежегодно. Изучение геометрии может объяснить науку, стоящую за архитектурой во всем мире. Статистика и вероятность позволяют оценить число погибших в результате землетрясений, конфликтов и других бедствий по всему миру. Он также может предсказать прибыль, распространение идей и то, как могут восстановиться популяции ранее находящихся под угрозой исчезновения животных. Математика — мощный инструмент глобального понимания и коммуникации. Используя его, студенты могут осмысливать мир и решать сложные и реальные проблемы. Переосмысление математики в глобальном контексте предлагает учащимся изменить типичное содержание, что делает саму математику более применимой и значимой для учащихся.
Чтобы учащиеся могли функционировать в глобальном контексте, математический контент должен помочь им овладеть глобальными знаниями, то есть пониманием различных точек зрения и мировых условий, признанием того, что проблемы взаимосвязаны по всему миру, а также общением и действиями надлежащим образом. В математике это означает переосмысление типичного содержания нетипичными способами и демонстрация учащимся того, как мир состоит из ситуаций, событий и явлений, которые можно разобрать с помощью правильных математических инструментов.
Любые глобальные контексты, используемые в математике, должны способствовать пониманию математики, а также мира. Для этого учителя должны сосредоточиться на преподавании качественного, надежного, строгого и подходящего математического материала и использовать глобальные примеры, которые работают. Например, учащиеся не найдут смысла решать задачи со словами в Европе, используя километры вместо миль, когда инструменты уже легко преобразуют числа. Это не способствует сложному пониманию мира.
Математика часто изучается как чистая наука, но обычно применяется в других дисциплинах, выходящих далеко за рамки физики и техники. Например, изучение экспоненциального роста и распада (скорости, с которой вещи растут и умирают) в контексте роста населения, распространения болезней или загрязнения воды имеет смысл. Это не только дает учащимся реальный контекст, в котором можно использовать математику, но и помогает им понять глобальные явления — они могут услышать о болезни, распространяющейся в Индии, но не могут установить связь, не понимая, как быстро может распространяться что-то вроде холеры. в плотном населении. На самом деле, добавление изучения роста и угасания к алгебре более низкого уровня — чаще всего оно встречается в алгебре II — может дать большему количеству студентов возможность изучать ее в глобальном контексте, чем если бы это было зарезервировано для математики более высокого уровня, которую не все учащиеся берут. .
Подобным образом изучение статистики и вероятностей является ключом к пониманию многих событий в мире и обычно предназначено для учащихся с более высоким уровнем математики, если оно вообще изучается в старшей школе. Но многие мировые события и явления непредсказуемы и могут быть описаны только с помощью статистических моделей, поэтому глобальная математическая программа должна включать статистику. Вероятность и статистика могут использоваться для оценки числа погибших в результате стихийных бедствий, таких как землетрясения и цунами; объем помощи, которая может понадобиться для ликвидации последствий; и количество людей, которые будут перемещены.
Понимание мира также означает признание вклада других культур. В алгебре учащиеся могут извлечь пользу из изучения систем счисления, которые уходят корнями в другие культуры, таких как майяская и вавилонская системы, система с основанием 20 и система с основанием 60 соответственно. Они дали нам элементы, которые все еще работают в современных математических системах, такие как 360 градусов по кругу и деление часа на 60-минутные интервалы, и включение этого типа контента может помочь развить понимание вклада других культур. к нашему пониманию математики.
Однако важно включать только те примеры, которые имеют отношение к математике и помогают учащимся понять мир. Например, в геометрии исламские мозаики — фигуры, расположенные в виде художественного узора, — могут использоваться в качестве контекста для развития, изучения, обучения и закрепления важных геометрических представлений о симметрии и преобразованиях. Учащиеся могут изучить различные типы многоугольников, которые можно использовать для тесселяции плоскости (покрытия пространства без каких-либо отверстий или перекрытий), и даже то, как исламские художники подошли к своему искусству. Здесь содержание и контекст способствуют пониманию другого.
Если учащимся будет предоставлено правильное содержание и контекст для глобальной учебной программы по математике, они смогут установить глобальные связи с помощью математики и создать математическую модель, отражающую сложность и взаимосвязь глобальных ситуаций и событий. Они смогут применять математические стратегии для решения задач, а также разрабатывать и объяснять использование данной математической концепции в глобальном смысле. И они смогут использовать правильные математические инструменты в правильных ситуациях, объяснить, почему выбранная ими математическая модель актуальна. Что еще более важно, учащиеся смогут использовать данные, чтобы делать обоснованные выводы, а также использовать математические знания и навыки, чтобы оказывать влияние на реальную жизнь.
К моменту окончания средней школы учащийся должен быть в состоянии использовать математические инструменты и процедуры для изучения проблем и возможностей в мире, а также использовать математические модели для принятия и обоснования выводов и действий.
Приведенные здесь примеры — это всего лишь примеры того, как это можно сделать, и их можно использовать для организации содержательных бесед с учителями математики. Это не отдельные учебные курсы, а перекрывающиеся и взаимосвязанные элементы, которые школы должны решить использовать способами, отвечающими их индивидуальным потребностям.
В основе любого обсуждения глобальной учебной программы с помощью математики важно учитывать, как математика помогает учащимся понять мир, что в опыте учащихся позволяет им использовать математику, чтобы внести свой вклад в мировое сообщество, и какое математическое содержание нужно учащимся для решения сложных задач в сложном мире. Затем задача состоит в том, чтобы найти подлинные, актуальные и значимые примеры глобального или культурного контекста, которые улучшают, углубляют и иллюстрируют понимание математики.
Мировая эра потребует этих навыков от своих граждан — система образования должна предоставить учащимся необходимые средства для их овладения.
В школах международных исследований Азиатского общества ожидается, что все выпускники средних школ продемонстрируют мастерство в математике. Учащиеся работают над навыками и проектами на протяжении всего среднего образования. По окончании учебы учащиеся получают портфолио работ, которое включает доказательства:
Global Connections
- Использование математики для моделирования ситуаций или событий в мире;
- Объяснение того, как сложность и взаимосвязанность ситуаций или событий в мире отражаются в модели;
- Данные, генерируемые моделью для принятия и защиты решения; и
- Решение или вывод, подкрепленный математикой в контексте глобального сообщества.
Решение проблем
- Применение соответствующих стратегий для решения проблем;
- Использование соответствующих математических инструментов, процедур и представлений для решения задачи;
- Обзор и доказательство правильного и разумного математического решения с учетом контекста.
Общение
- Разработка, объяснение и обоснование математических аргументов, включая используемые концепции и процедуры;
- Последовательная и четкая коммуникация с использованием правильного математического языка и визуальных представлений;
- Выражение математических идей с использованием математических символов и условностей.
Дебаты вокруг новой системы математики в Калифорнии
Вкратце
Стремясь помочь большему количеству учащихся преуспеть в естественных науках, технологиях, инженерии и математике, Калифорния работает над изменением методов преподавания математики в школах. Но предложенная новая структура вызвала широкую критику.
Lea este artículo en español .
Когда Ребекка Паризо согласилась присоединиться к группе преподавателей, которым в конце 2019 года была поручена работа над новой математической структурой Калифорнии, она сказала, что ожидала разногласий.
Но она не ожидала, что ее работа окажется в центре внимания всей страны.
«Мы трансформировали математическое образование, а перемены тяжелы и пугают», — сказал Паризо, учитель математики в округе начальной школы Уэнеме. «Особенно, если вы не понимаете, почему это изменение должно произойти. Но я не ожидал, что все зайдет так далеко».
Каждые восемь лет группа педагогов собирается вместе, чтобы обновить структуру учебного плана штата по математике. Это конкретное обновление привлекло дополнительное внимание и вызвало споры из-за предполагаемых изменений, которые оно вносит в то, как продвигаются «одаренные» ученики, а также потому, что оно отодвигает алгебру 1 обратно в 9-й класс, снижает упор на исчисление и применяет принципы социальной справедливости к урокам математики.
Их цель, по словам разработчиков системы, состоит в том, чтобы сохранить строгость, а также помочь устранить пробелы в успеваемости в Калифорнии для чернокожих, латиноамериканцев и учащихся с низким доходом, которые остаются одними из самых больших в стране.
В основе разногласий лежит широкое согласие по крайней мере по одному вопросу:
Методы преподавания математики в государственных школах Калифорнии не работают. По национальным стандартизированным тестам Калифорния находится в нижнем квартиле среди всех штатов и территорий США по результатам 8-го класса по математике.
Тем не менее, несмотря на весь этот шум и ярость, предлагаемая структура объемом около 800 страниц представляет собой не более чем набор предложений. Его дизайнеры пересматривают его сейчас и будут подвергать общественному рассмотрению еще 60 дней. Как только он будет одобрен в июле, округа могут принять столько рамок, сколько захотят, а также могут полностью игнорировать их без каких-либо штрафных санкций.
«Вы не обязаны использовать фреймворк», — сказала Дайан Уилсон, член группы разработчиков фреймворка, специалист по программам в Elk Grove Unified. «Есть опасения, что это будет реализовано неравномерно».
«Сейчас большие проблемы с преподаванием математики. То, как все устроено, не дает всем возможности изучать математику на самом высоком уровне».
rebecca pariso, учитель математики, школьный округ Hueneme Elementary School District
Представители школьного округа Cupertino Union School District, например, в мае разослали семьям письмо, в котором говорилось, что, несмотря на государственные рамки, он не планирует «вносить изменения в нашу математику». курсы в обозримом будущем».
Паризо хотела стать голосом своих учеников среди команды из 20 человек. В ее школьном округе в округе Вентура с 7500 учениками 42% учащихся изучают английский язык, а 84% имеют право на бесплатный обед или обед по сниженной цене. Она сказала, что таких учеников, как она, уже давно увольняют из-за отсутствия математических навыков из-за языковых барьеров или факторов вне класса, таких как отсутствие жилья или продовольственной безопасности. В результате, по ее словам, в штате, где расположены гигантские технологические компании, ее ученики отчуждены от карьеры в науке, математике, технике и технологиях.
— Сейчас большие проблемы с преподаванием математики, — сказал Паризо. «То, как все устроено, не дает всем возможности изучать математику на самом высоком уровне».
Сохраняющийся разрыв в успеваемости
Мэрайя Роуз, третьекурсница прикладной математики в Калифорнийском университете в Беркли, сказала, что до этого семестра у нее не было ни одного темнокожего одноклассника ни на одном из математических занятий.
«Сейчас в моем классе есть еще один чернокожий ученик, и это просто безумие для меня», — сказала Роуз. «Число чернокожих и коричневых в математике так мало».
Роуз, наполовину черная, наполовину латиноамериканка, сказала, что в этом нет ничего нового. Она сказала, что была единственной чернокожей ученицей на уроках математики в старшей школе. А ее успехи в математике делают ее исключением в системе государственных школ Калифорнии, где чернокожие и латиноамериканские учащиеся получают более низкие баллы по стандартным тестам.
Но вопрос о том, как закрыть этот разрыв, открыл еще один разрыв между экспертами в области математического образования и академическими математиками.
В июле сотни профессоров математики и естественных наук подписали открытое письмо с призывом к государству заменить предложенную структуру. Академические математики говорят, что их вклад ценен, потому что они не только прошли весь математический конвейер, но и знают, к чему приводит элементарная математика.
Блок-схема, созданная Ребеккой Парисон, которую она считает универсальной, помогает учителям в процессе выполнения домашних заданий по математике. «Я заметил, что домашнее задание иногда дают ученикам, мало задумываясь о его эффективности», — сказал Пэрисон. Пэрисон считает, что если учителя будут использовать эту таблицу, обучение будет равноправным и целенаправленным. 12 ноября 2021 г. Фото Джули Леопо для CalMattersСветлана Житомирская, профессор математики Калифорнийского университета в Ирвине, сказала, что авторам комитета следовало проконсультироваться с большим количеством экспертов в области STEM, которые лучше знакомы с необходимостью повышения квалификации и подготовки студентов. после старшей школы.
«В этом процессе определенно должны были участвовать преподаватели STEM из ведущих университетов Центральной Азии, обладающие непосредственным знанием того, что необходимо для успеха в качестве специальностей STEM», — написала она по электронной почте. «Абсурдно, что этого не было сделано».
Некоторые специалисты в области образования говорят, что эта структура больше всего навредит исторически маргинализированным учащимся, поскольку в нее будет включено слишком много тем, связанных с социальной справедливостью, которые отвлекают от математики.
«Способ добиться социальной справедливости в математике — это учить детей математике», — сказал Том Лавлесс, эксперт по математическому образованию на пенсии, работавший в Brookings Institution, национальном аналитическом центре. «Дело не в том, чтобы приукрасить математику социальной справедливостью».
Джо Боулер — главный автор концепции и профессор математического образования в Стэнфордском университете. Она и другие сторонники этой концепции говорят, что профессора университетов, которые работают со старшими и более мотивированными студентами, выбравшими математические курсы более высокого уровня, могут не обладать знаниями, необходимыми для создания учебной программы K-12, особенно для исторически маргинализированных групп студентов.
«Мы понимаем образование, а у них нет опыта изучения образования», — сказал Боулер. «Математики сидят наверху и говорят, что это то, что происходит в школах».
Бен Форд, профессор математики в Университете штата Сонома и один из авторов концепции, сказал, что он также с оптимизмом смотрит на то, что, особенно в университетах штата Калифорния, которые отдают предпочтение обучению, а не исследованиям, разрыв между математиками и преподавателями математики сужается.
«В наши дни математическое сообщество очень заботится о расширении участия, — сказал он. «Я думаю, что мы становимся все более изощренными в том, как наши методы способствуют исключению».
Противоречие между «одаренными» учащимися-математиками
Ключевым камнем преткновения в процессе утверждения была рекомендация структуры о том, чтобы учителя воздерживались от навешивания ярлыков на учащихся как «одаренных от природы» в математике. Это привело к обвинениям родителей и педагогов в том, что это сдерживает «одаренных» учеников.
«Сдерживая отличников, они заставляют их достигать большего?» сказал Эйвери Ванг, родитель ученика Palo Alto Unified. «Это точно такая же философия, которая продвигается в рамках математики».
Боулер сказал, что пересмотренный проект будет содержать больше предложений для более быстрого продвижения учащихся по математике на основе достижений.
Структура также требует более подробных и практических инструкций, будь то использование более инклюзивных местоимений или словесных задач, связанных с реальными проблемами, такими как жилье и изменение климата.
Для критиков это звучит опасно, как упрощение математики.
«Они меняют математику, чтобы сделать ее ценной», — сказал Майкл Малион, родитель объединенного школьного округа Пьемонт-Сити, который работает частным репетитором. «Частью математики является изучение вещей, которые не являются подлинными для жизни».
Малионе и другие родители говорят, что структура оказывает медвежью услугу исторически маргинализированным группам учащихся, предлагая им упрощенную версию математики, которая не может подготовить их к трудностям карьеры в области науки, техники, инженерии или математики.
«Математика будет сложной для тех учеников, которые не получают от нее столько удовольствия», — сказал Малион. «Но это цена, которую вы платите за то, чтобы дать им возможность изучать STEM».
Нажимая "Подписаться", вы соглашаетесь с Условиями.
Успех! Спасибо что подписались.
Пожалуйста, введите действительный адрес электронной почты
Обработка…
«Они меняют математику, чтобы сделать ее математической оценкой. Частью математики является изучение вещей, которые не являются подлинными для жизни».
Майкл Малион, родитель и частный репетитор по математике, Объединенный школьный округ города Пьемонт
Сторонники предложенной схемы утверждают, что критики слишком зациклены на защите учащихся, которые уже хорошо успевают по математике. В Калифорнии эти студенты, как правило, белые, выходцы из Восточной Азии или выходцы из более богатых семей.
«Люди, выступающие за традиционные методы, видят цель обучения математике в том, чтобы найти блестящих и помочь другим просто прожить жизнь», — сказал Форд. «Мы думаем о людях, по которым скучаем. Это мотивация для многих из нас, работающих над фреймворком».
Роуз, студентка факультета математики Калифорнийского университета в Беркли, сказала, что испытывает смешанные чувства. Она согласна с рекомендацией структуры отложить более продвинутые уроки математики и избегать маркировки учащихся на основе их математических способностей в более раннем возрасте. Но она не уверена, была бы она там, где она есть, если бы ее не перевели в математический класс более высокого уровня в 6-м классе.
«Это изменило правила игры», — сказала она. «Не знаю, стал бы я заниматься математикой, если бы не продвинулся так рано».
Сочетание математики и открытого опроса
Система не запрещает школьным округам ускорять обучение учащихся средней школы. Тем не менее, он рекомендует, чтобы все учащиеся средней школы проходили одну и ту же последовательность «интегрированных» математических занятий, в которых сочетаются понятия из арифметики, алгебры и других предметов с целью развития основы и уровня комфорта при работе с числами.
Кроме того, структура рекомендует школам отложить предложение учащимся Алгебры 1 до 9-го класса или позже, когда, по ее словам, больше учеников, вероятно, смогут усвоить материал.
«Когда дети борются, они сразу же говорят: «У меня нет математических способностей», — сказал Боулер. «Это меняет то, как работает мозг».
Отсрочка Алгебры 1 до 9-го класса, однако, потребует сжатия других математических предметов средней школы, таких как Геометрия, Алгебра 2 и Предварительное исчисление, чтобы учащиеся могли достичь уровня AP Исчисление к 12-му классу. В San Francisco Unified, которая внедрила этот путь в 2014 году, учащиеся прошли годичный курс, который сочетал в себе алгебру 2 и предварительное исчисление.
Житомирская сказала, что ожидание первого курса алгебры в старших классах приведет к ускоренным подготовительным курсам по математике, которые будут слишком сложны для большинства учащихся.
«Когда дети борются, они сразу же говорят: «У меня нет математических способностей». Это меняет работу мозга».
Джо Боулер, профессор Стэнфордского университета
Норм Матлофф, профессор компьютерных наук Калифорнийского университета в Дэвисе и критик фреймворка, сказал, что сжатые уроки математики «опасны», потому что они неизбежно пропускают части учебной программы. Он сказал, что лучше брать такие предметы, как геометрия и алгебра, в один и тот же год в виде двух отдельных годичных занятий.
Для Боалер и ее соавторов объединение традиционно отдельных математических классов идет рука об руку с открытыми исследованиями. Например, вместо того, чтобы задавать повторяющиеся наборы задач, учителя будут использовать совместные проекты, такие как расчет прожиточного минимума в студенческих сообществах. Открытые задания, подобные этому, не обязательно имеют единственный правильный ответ в конце книги.
— Математика может быть очень скучной для детей, — сказал Боулер. «Это просто ответы на эти короткие вопросы, которые не имеют никакого смысла».
Некоторые эксперты в области образования и профессора математики говорят, что упор, сделанный фреймворком на открытые задания, просто приводит в замешательство, особенно для борющихся за труд и исторически маргинализированных учащихся.
Лавлесс сказал, что обучение с помощью открытых задач может заставить студентов чувствовать себя потерянными. Он предлагает учителям использовать уроки в виде лекций, чтобы знакомить учащихся с понятиями.
— Это давний философский спор, — сказал он. «Отделы математического образования, как правило, очень прогрессивны в своей точке зрения».
исчисление исчисление
Фреймворк также создает новый курс по науке о данных в старшей школе в качестве альтернативы исчислению. Авторы говорят, что этот курс приведет к тому, что студенческий состав станет более разнообразным и будет заниматься наукой, технологиями, инженерией или математикой. Но некоторые эксперты говорят, что математика жизненно необходима для подготовки студентов к карьере в STEM.
«Если вы хотите работать в области науки о данных, которую в ближайшие пару лет не заменит компьютер, вам нужно пройти курс математического анализа», — сказала Житомирская, профессор математики Калифорнийского университета в Ирвине. «Они хотят, чтобы курс по науке о данных был полностью тупым».
Государственные данные показывают, что не только относительно небольшое число учащихся изучают математический анализ в средней школе, но и количество учащихся, зачисленных в наиболее продвинутые классы по математическому анализу — уже всего 3,7% в учебном году, начавшемся в 2014 г. , — сократилось за четыре года до всего лишь 3,4%.
Авторы фреймворка возражают, что изучение математики в старшей школе не должно быть обязательным для поступления в область STEM в колледже и за его пределами, особенно потому, что математика может быть препятствием для поступления для чернокожих и латиноамериканцев.
«Производные и интегралы не важны для поступления в колледж. Кредит колледжа и экзамен AP важнее», — сказал Форд. «Многие из нас на уровне колледжа предпочли бы, чтобы студенты приходили к нам более подготовленными к изучению исчисления 1».
На самом деле системы Калифорнийского университета и штата Калифорния предприняли шаги, чтобы уменьшить акцент на математическом анализе в качестве требования для поступления.
Роуз, студентка Калифорнийского университета в Беркли, сказала, что не могла оценить красоту исчисления, пока не поступила в колледж. На самом деле, она сказала, что ее одноклассники, которые поступили в колледж, не сдав AP Calculus, иногда получали более высокие баллы, чем она, на своих университетских курсах математического анализа.
— Математический анализ известен тем, что помогает поступить в колледж, но математический анализ — это гораздо больше, — сказала Роуз.
Это «пробудившаяся» математика?
Другие критики критикуют новую структуру как «пробужденную математику», которая «дематематизирует математику» уроками социальной справедливости и левой идеологией.
Открытое письмо, подписанное более чем тысячей экспертов STEM, осудило структуру за то, что она предложила учителям подчеркивать «вклад, который исторически маргинализированные люди внесли в математику», «принимать подход, ориентированный на справедливость, на любом уровне обучения» и использовать инклюзивный гендер. местоимения.
Редакционная статья Wall Street Journal, которая помогла вызвать национальный интерес к программе обучения математике в Калифорнии, и консервативные издания, такие как National Review, возражали против случайного цитирования в рамках структуры «Пути к справедливому преподаванию математики», руководства, целью которого является показать учителям математики, как они могут использовать свой класс для борьбы с превосходством белых. В руководстве утверждается, что современная математическая педагогика в США различными способами укрепляет превосходство белых; его критики говорят, что числа есть числа, так как же может быть расизм в математике?
Вскоре после этого авторы удалили ссылки на руководство.
Учительница Ребекка Парисон в своем кабинете в округе начальной школы Уэнеме в Окснарде. Фото Джули Леопо для CalMattersМатлофф, профессор Калифорнийского университета в Дэвисе, сказал, что у него нет проблем с инклюзивным языком, но что «вокизм» не должен идти за счет математики. «У меня проблема, когда люди делают одержимость расой», — сказал он. «Они упускают из виду проблему обучения детей математике».
Критики также подвергли критике рекомендуемые задания, которые пытаются применить математические концепции к темам социальных наук.
Но Брайан Линдаманн, один из авторов концепции, сказал, что различия между двумя областями часто «искусственны».
«Например, что-то вроде понимания того, как работает стоимость жизни — это и математика, и социальная справедливость», — сказал он. «Интерсекциональность многих из этих дисциплин — это то, что движет обществом в целом. Почему бы учителю экономики и учителю математики не вести урок вместе?»
И в то время как некоторые критики закатывают глаза при мысли, например, об использовании «они» и «их» в качестве местоимения единственного числа без указания рода, преподаватели, такие как Паризо, говорят, что нечувствительный язык может быть серьезным препятствием для обучения.
Она отметила, что более ранний вариант схемы включал примеры уроков по подсчету пищевых отходов в школьной столовой, но многие из ее учеников сочли бы это упражнение отчужденным, потому что у них дома нет продовольственной безопасности.
Более крупные структурные математические задачи
В течение восьми месяцев рамочный комитет собирался несколько раз, сначала лично, а затем виртуально, как только пандемия COVID-19 охватила Калифорнию. Паризо описывает встречи как «интенсивное» сотрудничество между учителями математики, администраторами школьных округов и экспертами по математическому образованию.
Она и комитет дали свои окончательные рекомендации по математической структуре штата группе писателей во время серии встреч, завершившихся в декабре 2020 года. Эти авторы, пять профессоров со всего штата, написали 800-страничный проект, который вызвал похвалу и критика.
После многочасовых публичных выступлений Совет по образованию штата Калифорния отложил процесс утверждения на два месяца.
Каким бы ни было влияние новой системы, государственные школы Калифорнии по-прежнему сталкиваются с системными проблемами.
Арис Биглер, учитель математики из Лос-Анджелеса, который помог разработать структуру, сказал, что маленькие классы имеют ключевое значение: «Если ребенку неудобно умножать шесть на четыре, я могу как бы закрепить его, не стыдя его».
Но из-за постоянной нехватки учителей преподавание менее привлекательно для выпускников колледжей со степенью STEM.
«У меня есть ученики, которые очень увлечены преподаванием и очень хотели бы преподавать в старших классах», — сказала Житомирская. «Но они предпочли бы более высокооплачиваемую работу STEM».
Несмотря на это — и признавая, что не все округа будут полностью выполнять все рекомендации новой системы — Паризо сказал, что это шаг в правильном направлении.
«Раньше я ценила и придавала большое значение студентам, которые набрали 100 %, — сказала она. «Но после размышлений и изучения инструментов Джо Боулер я понял, что мне нужно уделить время, чтобы отпраздновать успехи учащихся. Я больше не говорю о стопроцентных. Я говорю: «Вау, посмотри, как далеко ты продвинулся».
Мы хотим услышать от вас
Хотите оставить комментарий гостя или реакцию на статью, которую мы написали? Вы можете найти наши правила подачи здесь. Пожалуйста, свяжитесь с CalMatters с любыми комментариями: [email protected]
История, которую вы только что прочитали, была профинансирована такими же людьми, как вы.
CalMatters — это некоммерческий отдел новостей, и ваши не облагаемые налогом пожертвования помогают нам продолжать предоставлять вам и каждому жителю Калифорнии важную беспристрастную информацию.