Civil Rights
Movements, leaders, victories and the continuing fight for equality.
Explore the people, places, events, achievements, struggles and stories that shaped our journey.
Movements, leaders, victories and the continuing fight for equality.
Innovation, patents, science, technology and world-changing contributions.
Pioneers, champions, Negro Leagues, records, activism and excellence.
Meet the people whose lives, choices and achievements shaped the journey.
Black towns, communities, institutions and places where history happened.
Moments that changed communities, movements, institutions and the nation.
Katherine Johnson’s mathematical calculations helped guide some of America’s most important early space missions while she confronted the racial and gender barriers faced by Black women in twentieth-century America.
MORE →Reflects the personal views, recollections, and perspective of the author, Mike Davis.
This is a personal recollection on the Move fire on May 13, 1985
In type theory, bounded quantification (also bounded polymorphism or constrained genericity) refers to universal or existential quantifiers which are restricted ("bounded") to range only over the subtypes of a particular type. Bounded quantification is an interaction of parametric polymorphism with subtyping. Bounded quantification has traditionally been studied in the functional setting of System F<:, but is available in modern object-oriented languages supporting parametric polymorphism (generics) such as Java, C# and Scala.
The purpose of bounded quantification is to allow for polymorphic functions to depend on some specific behaviour of objects instead of type inheritance. It assumes a record-based model for object classes, where every class member is a record element and all class members are named functions. Object attributes are represented as functions that take no argument and return an object. The specific behaviour is then some function name along with the types of the arguments and the return type. Bounded quantification considers all objects with such a function. An example would be a polymorphic min function that considers all objects that are comparable to each other.[citation needed]
-bounded quantification or recursively bounded quantification, introduced in 1989, allows for more precise typing of functions that are applied on recursive types. A recursive type is one that features as a constructor a function that uses it as a type for some argument, or the return value of a functional argument, or some argument of the functional return value of a functional argument, or so on: that is, in positive position.[1]
This kind of type constraint can be expressed in Java with a generic interface. The following example demonstrates how to describe types that can be compared to each other and use this as typing information in polymorphic functions. The Test::min function uses simple bounded quantification and does not ensure the objects are mutually comparable, in contrast with the Test::fMin function which uses -bounded quantification.
In mathematical notation, the types of the two functions are
where
Consider the following possible declarations in java.lang:
package java.lang;
public interface Comparable<T> {
int compareTo(T other);
}
public class Integer implements Comparable<Integer> {
@Override
public int compareTo(Integer other) {
// ...
}
}
public class String implements Comparable<String> {
@Override
public int compareTo(String other) {
// ...
}
}
Then, in use:
package org.wikipedia.examples;
public class Test {
public static <S extends Comparable> S min(S a, S b) {
if (a.compareTo(b) <= 0) {
return a;
} else {
return b;
}
}
public static <T extends Comparable<T>> T fMin(T a, T b) {
if (a.compareTo(b) <= 0) {
return a;
} else {
return b;
}
}
public static void main(String[] args) {
String a = min("cat", "dog");
Integer b = min(10, 3);
Comparable c = min("cat", 3); // Throws java.lang.ClassCastException at runtime
String str = fMin("cat", "dog");
Integer i = fMin(10, 3);
// Object o = fMin("cat", 3); // Does not compile
}
}
{{cite journal}}: Cite uses deprecated parameter |citeseerx= (help)Source: Wikipedia. Article content is retrieved live through the MediaWiki API.
On Interpretation (Greek: Περὶ Ἑρμηνείας, Peri Hermeneias) is the second text from Aristotle's Organon and is among the earliest surviving philosophical works in the Western tradition to deal with the relationship between language and logic in a comprehensive, explicit, and formal way. The work begins by analyzing simple categoric propositions, and draws a series of basic conclusions on the routine issues of classifying and defining basic linguistic forms, such as simple terms and propositions, nouns and verbs, negation, the quantity of simple propositions (primitive roots of the quantifiers in modern symbolic logic), investigations on the excluded middle (which to Aristotle is not applicable to future tense propositions—the problem of future contingents), and on modal propositions. From the work comes the idea of Apophansis' (Greek: ἀπόφανσις), which considers the nature of nouns and verbs and how they might be combined as a proposition, which is the combination of a subject a noun, a verb, and a tense that can be either outright credible (κατάφασις kataphasis) or not (ἀπόφημι apophasis). The first five chapters deal with the terms that form propositions. Chapters 6 and 7 deal with the relationship between affirmative, negative, universal and particular propositions. These relationships are the basis of the well-known square of opposition. The distinction between universal and particular propositions is the basis of modern quantification theory. The last three chapters deal with modalities. Chapter 9 is famous for the discussion of the sea-battle. (If it is true that there will be a sea-battle tomorrow, then it is true today that there will be a sea-battle. Thus a sea-battle is apparently unavoidable, and thus necessary. Another interpretation would be: that we cannot know that which has not yet come to pass. In other words: if there is a sea battle tomorrow then it is true today that tomorrow there will be a sea battle. So, only if we can know whether or not there will be a sea battle tomorrow then can we know if there will be a sea battle).
In predicate logic, universal instantiation (UI; also called universal specification or universal elimination, and sometimes confused with dictum de omni) is a valid rule of inference from a truth about each member of a class of individuals to the truth about a particular individual of that class. It is generally given as a quantification rule for the universal quantifier but it can also be encoded in an axiom schema. It is one of the basic principles used in quantification theory. Example: "All dogs are mammals. Fido is a dog. Therefore Fido is a mammal." Formally, the rule as an axiom schema is given as ∀ x A ⇒ A { x ↦ t } , {\displaystyle \forall x\,A\Rightarrow A\{x\mapsto t\},} for every formula A and every term t, where A { x ↦ t } {\displaystyle A\{x\mapsto t\}} is the result of substituting t for each free occurrence of x in A. A { x ↦ t } {\displaystyle \,A\{x\mapsto t\}} is an instance of ∀ x A . {\displaystyle \forall x\,A.} And as a rule of inference it is from ⊢ ∀ x A {\displaystyle \vdash \forall xA} infer ⊢ A { x ↦ t } . {\displaystyle \vdash A\{x\mapsto t\}.} Irving Copi noted that universal instantiation "...follows from variants of rules for 'natural deduction', which were devised independently by Gerhard Gentzen and Stanisław Jaśkowski in 1934."
In mathematics and logic, plural quantification is the theory that an individual variable x may take on plural, as well as singular, values. As well as substituting individual objects such as Alice, the number 1, the tallest building in London etc. for x, we may substitute both Alice and Bob, or all the numbers between 0 and 10, or all the buildings in London over 20 stories. The point of the theory is to give first-order logic the power of set theory, but without any "existential commitment" to such objects as sets. The classic expositions are Boolos 1984 and Lewis 1991.
In type theory, bounded quantification (also bounded polymorphism or constrained genericity) refers to universal or existential quantifiers which are restricted ("bounded") to range only over the subtypes of a particular type. Bounded quantification is an interaction of parametric polymorphism with subtyping. Bounded quantification has traditionally been studied in the functional setting of System F
Before the 1921 destruction of Tulsa’s Greenwood District, Black residents had created a remarkable center of business and community life. The district included stores, professional offices, entertainment venues and homes owned by Black citizens. Understanding Greenwood means learning what was built—not only what was burned.
MORE →Shirley Chisholm, elected in 1968.