Что такое предикат?

установите padding-right: 0; на ul

.menu {
    padding-right: 0; 
}
62
задан Benjamin 25 July 2016 в 12:35
поделиться

10 ответов

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

A логическое выражение, которое принимает значение ИСТИНА или ЛОЖЬ, обычно для указания пути выполнения в коде.

Ссылка: Тестирование программного обеспечения. Мэтью Хайден

49
ответ дан 24 November 2019 в 15:50
поделиться

Лучший ответ S.O. вокруг предикатов, которые я нашел, находится на дублирующийся вопрос.

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

Jane высока

, Jane является предметом, и is tall предикат.

В информатике мы не интересуемся утверждением факта о предмете, а скорее тестировании, если что-то - TRUE или FALSE.

jane.isTall();

Здесь jane является некоторым объектом с методом предиката, который возвратит любой TRUE или FALSE.

0
ответ дан cham 22 September 2019 в 16:41
поделиться

Утверждение, которое либо истинно, либо ложно. В программировании это обычно функция, которая возвращает логическое значение для некоторого ввода.

Чаще всего (я полагаю) используется в контексте функции высшего порядка. Например filter - это функция на многих языках, которая принимает предикат и список в качестве аргументов и возвращает элементы в списке, для которых предикат истинен.

Пример в javascript:

lessThanTen = function(x) { return x < 10; }
[1,7,15,22].filter(lessThanTen) --> [1,7]

функция lessThanTen является здесь предикатом, который применяется к каждому элементу в списке. Конечно, в качестве предиката вместо функции можно использовать логическое выражение, например filter (true) вернет полный список, filter (false) пустой список.

38
ответ дан 24 November 2019 в 15:50
поделиться

В терминах, не связанных с программированием; вопрос . Обычно общий вопрос с заполнителями (например, it и them ) можно задать о многом.

  • это красный?
  • это собака?
  • это принадлежит им ?
4
ответ дан 24 November 2019 в 15:50
поделиться

Базовая оценка, результатом которой является логическое значение 1 . Он часто относится к функции или объекту, который представляет оценку этого типа.

1: логическое значение используется свободно, не обязательно относится к переменным, объявленным bool или логическим .

4
ответ дан 24 November 2019 в 15:50
поделиться

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

2
ответ дан 24 November 2019 в 15:50
поделиться

Я не знаю, в правильном ли контексте говорю, но в C # есть класс Predicate , который по сути является делегатом, который, учитывая элемент, определяет, соответствует ли объект набору критериев.

Например, следующий метод, который имеет тип Predicate , может использоваться для выбора всех целых чисел больше 5:

public bool MyPredicate(int x)
{
   return x > 5;
}

] Я не уверен, как это переводится в более общий случай, но это начало. Для получения дополнительной информации нажмите здесь .

1
ответ дан 24 November 2019 в 15:50
поделиться

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

http://www.tizag.com/sqlTutorial/sqlpredicates.php

0
ответ дан 24 November 2019 в 15:50
поделиться

Предикат - это не просто выражение, которое принимает значение true или false, это еще не все. Термин «предикат» используется для обозначения выражения, которое определяет , является ли что-то истинным или ложным. Или, другими словами, он делает утверждение и в зависимости от этого возвращает истину или ложь.

Например (в C #):

/*this is a predicate, as it's sole purpose is to make some 
 assertion about something.*/
bool IsNameBob(string name)
{
   return name == "Bob";
}

/*Whereas this is not a predicate, as it's performing an action
 then evaluating to true if it succeeds. */
bool DoSomethingCool() {
   try 
   {
       ImDoingSomethingCool();
   }
   catch
   {
      return false;
   }
   return true;
}

Я понимаю, что я здесь поставил чисто различие в семантике, но о чем был этот вопрос? Семантика?

18
ответ дан 24 November 2019 в 15:50
поделиться

Я пишу патч для приложения, часть которого включает выполнение sql-скрипта 5000 строки для внесения изменений в базу данных. Скрипт написан с использованием синтаксиса MSSQL , однако мне было интересно, есть ли приложение для автоматического преобразования синтаксиса MSSQL в синтаксис Oracle и / или MySQL , чтобы избавить меня от необходимости делать это вручную.

Это вряд ли возможно.

Общее подмножество SQL , все эти системы поддерживают довольно мало.

Поскольку у вас есть ] 5000 строк кода в вашем скрипте, скорее всего, он не из этого подмножества.

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

  • Oracle , например, одна из двух основных частей предложение (другой субъект, который изменяет предикат). Для простое предложение «Джон [желтый]», Джон действует как субъект, и желтый действует как сказуемое, а последующее описание предмета начинается с глагола.

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

    В терминах логики:

    Оператор в логике, который возвращает либо true, либо false.

    из MathWorld

2
ответ дан 24 November 2019 в 15:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: