14: "Информационно-коммуникационные технологии", Запросы для поисковых систем с использованием логических операций.

Решать задачи по теме

Поисковые запросы

Поиск по одному слову

Если вы вводите только одно слово, поисковая система будет искать все страницы, содержащие это слово. Например, поиск по слову "канарейки" вернет все страницы, где упоминается это слово.


Поисковые запросы могут быть разных типов в зависимости от логических связок между словами и использования символов "&", "|", а также логического "не".

Поиск по нескольким словам с логической связкой "И" с использованием символа "&"

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

Поиск по нескольким словам с логической связкой "ИЛИ" с использованием символа "|"

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

Поиск с использованием логического "не"

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



Важно: порядок выполнения операций.

Если в запросе присутствуют & и |, то & выполняется первым. Скобки выполняются первыми в любом случае.

Пример

Приведены запросы к поисковой системе:

1) олимпиада

2) олимпиада & коньки | лыжи

3) олимпиада & коньки

4) олимпиада | лыжи

Представьте результаты выполнения этих запросов графически с помощью кругов Эйлера.
Укажите номера запросов в порядке возрастания количества документов, которые найдёт поисковая
система по каждому запросу.

Решение

Для удобства, части, полученные при пересечении кругов Эйлера, - нумеруются.

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

  • 1) олимпиада: части 1234
  • 2) олимпиада & коньки | лыжи:
      Первым действием выполняется пересечение олимпиада & коньки - части 24,
      вторым действием полученная область (части 24) объединяется с кругом "лыжи": это части 23467
  • 3) олимпиада & коньки: части 24
  • 4) олимпиада | лыжи: части 123467

Таким образом, в порядке возрастания количества документов, найденных по каждому запросу, будет:

  1. 3) олимпиада & коньки
  2. 1) олимпиада
  3. 2) олимпиада & коньки | лыжи
  4. 4) олимпиада | лыжи

Пример 2. Простое объяснение без кругов Эйлера.

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

Для обозначения логической операции «ИЛИ» в запросе используется символ "|" , а для логической операции «И» — &.


Запросы:
  1. яблоки & груши
  2. яблоки | сливы
  3. яблоки
  4. яблоки & сливы & груши
Решение.

Логическая операция “И” истинна только тогда, когда истинны оба аргумента. Например, чтобы было истинно «яблоки & груши» необходимо, чтобы в тексте содержалось и слово «груши» и слово «яблоки».

Для истинности логической операции “ИЛИ” достаточно истинности хотя бы одного из ее аргументов. Например, чтобы было истинно «яблоки | груши» необходимо, чтобы в тексте содержалось или слово «груши» или слово «яблоки», оба слова вместе тоже подходят.

Вывод: чем больше операторов &, тем меньше страниц найдет поисковик, а чем больше операторов | — тем больше.

Ответ: 4, 1, 3, 2.


Пример 3.

Ниже приведены запросы к поисковому серверу. Расположите номера запросов в порядке убывания количества страниц, которые найдет поисковый сервер по каждому запросу. Для обозначения логической операции «ИЛИ» в запросе используется символ |, а для логической операции «И» – &.

  1. яблоки | сливы
  2. сливы | (яблоки & груши)
  3. яблоки | груши | сливы
  4. (яблоки | груши) & сливы
Решение.

Логическая операция “И” истинна только тогда, когда истинны оба аргумента. Например, чтобы было истинно «канарейки & содержание» необходимо, чтобы в тексте содержалось и слово «канарейки» и слово «содержание».

Для истинности логической операции “ИЛИ” достаточно истинности лишь одного из ее аргументов. Например, чтобы было истинно «канарейки содержание» необходимо, чтобы в тексте содержалось или слово «канарейки» или слово «содержание».

Вывод: чем больше операторов & («И»), тем меньше страниц найдет поисковик, а чем больше операторов | («ИЛИ»), тем больше страниц будет найдено.

Ответ: 3124.
Примечание.

Если сравнивать варианты 2 и 4, то
большее количество страниц обеспечит запрос 2. сливы | (яблоки & груши), так как в нём к результату "сливы" прибавляется небольшое количество результатов "яблоки & груши",
в отличие от запроса 4. (яблоки | груши) & сливы, где одновременных требований больше (должны быть и сливы, и [яблоки или груши]) - значит результатов меньше.

Пример 4

Приведены запросы к поисковой системе:

  1. бульдог | доберман | питомник
  2. бульдог | доберман | уход | питомник
  3. доберман & бульдог
  4. (доберман | бульдог) & уход

Укажите номера запросов в порядке возрастания количества документов, которые найдёт поисковая система по каждому запросу.

Объяснение примера 4

  • 1) Запрос "бульдог | доберман | питомник" найдёт страницы, содержащие хотя бы одно из слов "бульдог", "доберман" или "уход". Объединение этих кругов.
  • 2) Запрос "бульдог | доберман | уход | питомник" найдёт страницы, содержащие хотя бы одно из слов "бульдог", "доберман", "уход" или "питомник". Объединение этих кругов.
  • 3) Запрос "доберман & бульдог" найдёт страницы, содержащие каждое из слов "доберман" и "бульдог". Пересечение этих кругов.
  • 4) Запрос "(доберман | бульдог) & уход" найдёт страницы, содержащие ("доберман" или "бульдог") и "уход".
      Спачала выполняем действие в скобках - объединение:
      Затем выполняем оставшееся действие - пересечение:

Таким образом, в порядке возрастания количества документов, найденных по каждому запросу, будет:

  1. 3) доберман & бульдог
  2. 4) (доберман | бульдог) & уход
  3. 1) бульдог | доберман | питомник
  4. 2) бульдог | доберман | уход | питомник
Объяснение задачи на нахождение количества страниц. №1.
Описание задачи

В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для обозначения логической операции «И» — символ «&». Приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

  • Мороз | Солнце = 7000
  • Мороз = 3700
  • Мороз & Солнце = 500
Решение задачи

Для нахождения количества страниц, найденных по запросу Солнце, используем объединение и пересечение кругов Эйлера:

(A | B) = A + B - (A & B)
Простыми словами, при объединении элементов области A с элементами области B их общее количество (A | B) будет равно:
сумме A + B минус область их пересечения (A & B), так как область пересечения окажется посчитанной дважды.

Подставим известные значения:

7000 = 3700 + Солнце - 500

Решим уравнение для нахождения Солнце:

Солнце = 7000 - 3700 + 500 = 3800

Таким образом, количество страниц (в тысячах), найденных по запросу Солнце, равно 3800.

Объяснение задачи на нахождение количества страниц. №2.
Описание задачи

В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ «|», а для обозначения логической операции «И» — символ «&». Приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

  • Царевна = 3600
  • Лягушка = 2900
  • Царевна | Лягушка = 5760
Решение задачи

Для нахождения количества страниц, найденных по запросу Царевна & Лягушка, используем объединение и пересечение кругов Эйлера:

(A | B) = A + B - (A & B)

Подставим известные значения:

5760 = 3600 + 2900 - (Царевна & Лягушка)

Решим уравнение для нахождения (Царевна & Лягушка):

(Царевна & Лягушка) = 3600 + 2900 - 5760 = 740

Таким образом, количество страниц (в тысячах), найденных по запросу Царевна & Лягушка, равно 740.


Решать задачи по теме