A one-bit message is a type of communication that has no personalized or specified content, and as such transmits only a single binary bit of information. It signals an intent and a thought, but does not specify what it is. Marc Andreessen describes "one-bit communication" as having no content other than that it exists.[1] Examples of one-bit messages in the real world include the sound of a car horn, a police siren,[1] and an "open" sign on a retail store.[1] Telephone calls which are deliberately terminated before being answered are also an example of one-bit communication.
In probability
One-bit messages can be used to communicate the outcome of situations with two potential outcomes, such as a coin toss.[2][disputed ]
Online messaging
In the online world, one-bit messages solve a set of communication initiative problems:[citation needed]
- Fear of initiation: "How should I kick off the conversation? It's a daunting task."
- Fear of rejection: "What if the other person replies 'sorry, I'm in the middle of something'?"
- Fear of inconveniencing someone: "A messenger shows that the other person is available, but maybe he is actually busy."
- Fear of being ignored: "What if I message her, and she doesn't respond or goes offline immediately?"
- Topic overload: "So many topics to talk about, which one should I start with?"
- Lack of topic: "I simply want to say to my friend that I thought of her, without anything specific to say."
- Fear of a conversation of unpredictable length: "I have time for a short chat, but how do I cut it off if the conversation develops?"
- Unwillingness to type: "I'm on my mobile, and don't want to type."
- Fear of follow-up: "What if the person I message will want to meet? I don't want to meet him."
There are several platforms that enable sending one-bit messages including Yo and the Facebook poke.
References
- Belzer, Jack (1978). Encyclopedia of Computer Science and Technology: Generative epistemology to Laplace transforms (1 ed.). New York, NY [u.a.]: Dekker. p. 391. ISBN 0824722590.
| |||||||||||||||||||
| |||||||||||||||||||
Further information | |||||||||||||||||||
|
https://en.wikipedia.org/wiki/One-bit_message
https://en.wikipedia.org/wiki/Missed_call
https://en.wikipedia.org/wiki/Animal_communication
https://en.wikipedia.org/wiki/Monastic_sign_languages
https://en.wikipedia.org/wiki/Mime_artist
https://en.wikipedia.org/wiki/Subtext
https://en.wikipedia.org/wiki/Category:Units_of_information
This category identifies units of information or computer storage.
https://en.wikipedia.org/wiki/Category:Units_of_information
https://en.wikipedia.org/wiki/Category:Information
A binary prefix is a unit prefix for multiples of units. It is most often used in data processing, data transmission, and digital information, principally in association with the bit and the byte, to indicate multiplication by a power of 2. As shown in the table to the right there are two sets of symbols for binary prefixes, one set established by International Electrotechnical Commission (IEC) and several other standards and trade organizations using two-letter symbols, e.g. Mi indicating 1048576 with a second set established by semiconductor industry convention using one-letter symbols, e.g., M also indicating 1048576.
In most contexts, industry uses the multipliers kilo (k), mega (M), giga (G), etc., in a manner consistent with their meaning in the International System of Units (SI), namely as powers of 1000. For example, a 500-gigabyte hard disk holds 500000000000 bytes, and a 1 Gbit/s (gigabit per second) Ethernet connection transfers data at nominal speed of 1000000000 bit/s. In contrast with the binary prefix usage, this use is described as a decimal prefix, as 1000 is a power of 10 (103).
The computer industry has historically in citations of main memory (RAM) capacity used the units kilobyte, megabyte, and gigabyte, and the corresponding symbols KB, MB, and GB, in a binary sense: gigabyte customarily means 1073741824 bytes. As this is a power of 1024, and 1024 is a power of two (210), these three usages are referred to as binary prefixes; they were defined by the Joint Electron Device Engineering Council (JEDEC) for semiconductors and are used by some operating systems.
The use of the same unit prefixes with two different meanings has caused confusion. Starting around 1998, the IEC and several other standards and trade organizations attempted to address the ambiguity by publishing standards and recommendations for a set of binary prefixes that refer exclusively to powers of 1024. Accordingly, the US National Institute of Standards and Technology (NIST) requires that SI prefixes be used only in the decimal sense:[1] kilobyte and megabyte denote one thousand bytes and one million bytes respectively (consistent with SI), while new terms such as kibibyte, mebibyte, and gibibyte, having the symbols KiB, MiB, and GiB, denote 1024 bytes, 1048576 bytes, and 1073741824 bytes, respectively.[2] In 2008, the IEC prefixes were incorporated into the ISO/IEC 80000 standard alongside the decimal prefixes of the international standard system of units.
In response to litigation over the use of metric prefixes, the United States District Court for the Northern District of California includes a judicial notice that "the U.S. Congress has deemed the decimal definition of gigabyte to be the 'preferred' one for the purposes of 'U.S. trade and commerce.'"[3][4]
History
Early prefixes
The original metric system adopted by France in 1795 included two binary prefixes named double- (2×) and demi- (1/2×).[5] However, these were not retained when the SI prefixes were internationally adopted by the 11th CGPM conference in 1960.
Main memory
Early computers used one of two addressing methods to access the system memory; binary (base 2) or decimal (base 10).[6] For example, the IBM 701 (1952) used binary and could address 2048 words of 36 bits each, while the IBM 702 (1953) used decimal and could address ten thousand 7-bit words.
By the mid-1960s, binary addressing had become the standard architecture in most computer designs, and main memory sizes were most commonly powers of two. This is the most natural configuration for memory, as all combinations of their address lines map to a valid address, allowing easy aggregation into a larger block of memory with contiguous addresses.
Early computer system documentation would specify the memory size with an exact number such as 4096, 8192, or 16384 words of storage. These are all powers of two, and furthermore are small multiples of 210, or 1024. As storage capacities increased, several different methods were developed to abbreviate these quantities.
The method most commonly used today uses prefixes such as kilo, mega, giga, and corresponding symbols K, M, and G, which the computer industry originally adopted from the metric system. The prefixes kilo- and mega-, meaning 1000 and 1000000 respectively, were commonly used in the electronics industry before World War II.[7] Along with giga- or G-, meaning 1000000000, they are now known as SI prefixes[defn. 1] after the International System of Units (SI), introduced in 1960 to formalize aspects of the metric system.
The International System of Units does not define units for digital information but notes that the SI prefixes may be applied outside the contexts where base units or derived units would be used. But as computer main memory in a binary-addressed system is manufactured in sizes that were easily expressed as multiples of 1024, kilobyte, when applied to computer memory, came to be used to mean 1024 bytes instead of 1000. This usage is not consistent with the SI. Compliance with the SI requires that the prefixes take their 1000-based meaning, and that they are not to be used as placeholders for other numbers, like 1024.[8]
The use of K in the binary sense as in a "32K core" meaning 32 × 1024 words, i.e., 32768 words, can be found as early as 1959.[9][10] Gene Amdahl's seminal 1964 article on IBM System/360 used "1K" to mean 1024.[11] This style was used by other computer vendors, the CDC 7600 System Description (1968) made extensive use of K as 1024.[12] Thus the first binary prefix was born.[defn. 2]
Another style was to truncate the last three digits and append K, essentially using K as a decimal prefix[defn. 3] similar to SI, but always truncating to the next lower whole number instead of rounding to the nearest. The exact values 32768 words, 65536 words and 131072 words would then be described as "32K", "65K" and "131K".[13] (If these values had been rounded to nearest they would have become 33K, 66K, and 131K, respectively.) This style was used from about 1965 to 1975.
These two styles (K = 1024 and truncation) were used loosely around the same time, sometimes by the same company. In discussions of binary-addressed memories, the exact size was evident from context. (For memory sizes of "41K" and below, there is no difference between the two styles.) The HP 21MX real-time computer (1974) denoted 196608 (which is 192×1024) as "196K" and 1048576 as "1M",[14] while the HP 3000 business computer (1973) could have "64K", "96K", or "128K" bytes of memory.[15]
The "truncation" method gradually waned. Capitalization of the letter K became the de facto standard for binary notation, although this could not be extended to higher powers, and use of the lowercase k did persist.[16][17][18] Nevertheless, the practice of using the SI-inspired "kilo" to indicate 1024 was later extended to "megabyte" meaning 10242 (1048576) bytes, and later "gigabyte" for 10243 (1073741824) bytes. For example, a "512 megabyte" RAM module is 512 × 10242 bytes (512 × 1048576, or 536870912), rather than 512000000.
The symbols Kbit, Kbyte, Mbit and Mbyte started to be used as "binary units"—"bit" or "byte" with a multiplier that is a power of 1024—in the early 1970s.[19] For a time, memory capacities were often expressed in K, even when M could have been used: The IBM System/370 Model 158 brochure (1972) had the following: "Real storage capacity is available in 512K increments ranging from 512K to 2,048K bytes."[20]
Megabyte was used to describe the 22-bit addressing of DEC PDP-11/70 (1975)[21] and gigabyte the 30-bit addressing DEC VAX-11/780 (1977).
In 1998, the International Electrotechnical Commission IEC introduced the binary prefixes kibi, mebi, gibi, etc., to mean 1024, 10242, 10243 etc., so that 1048576 bytes could be referred to unambiguously as 1 mebibyte. The IEC prefixes were defined for use alongside the International System of Quantities (ISQ) in 2009.
Disk drives
The disk drive industry has followed a different pattern. Disk drive capacity is generally specified with unit prefixes with decimal meaning, in accordance to SI practices. Unlike computer main memory, disk architecture or construction does not mandate or make it convenient to use binary multiples. Drives can have any practical number of platters or surfaces, and the count of tracks, as well as the count of sectors per track may vary greatly between designs.
The first commercially sold disk drive, the IBM 350, had fifty physical disk platters containing a total of 50000 sectors of 100 characters each, for a total quoted capacity of 5 million characters.[22] It was introduced in September 1956.
In the 1960s most disk drives used IBM's variable block length format, called Count Key Data (CKD).[23] Any block size could be specified up to the maximum track length. Since the block headers occupied space, the usable capacity of the drive was dependent on the block size. Blocks ("records" in IBM's terminology) of 88, 96, 880 and 960 were often used because they related to the fixed block size of 80- and 96-character punch cards. The drive capacity was usually stated under conditions of full track record blocking. For example, the 100-megabyte 3336 disk pack only achieved that capacity with a full track block size of 13030 bytes.
Floppy disks for the IBM PC and compatibles quickly standardized on 512-byte sectors, so two sectors were easily referred to as "1K". The 3.5-inch "360 KB" and "720 KB" had 720 (single-sided) and 1440 sectors (double-sided) respectively. When the High Density "1.44 MB" floppies came along, with 2880 of these 512-byte sectors, that terminology represented a hybrid binary-decimal definition of "1 MB" = 210 × 103 = 1 024 000 bytes.
In contrast, hard disk drive manufacturers used megabytes or MB, meaning 106 bytes, to characterize their products as early as 1974.[24] By 1977, in its first edition, Disk/Trend, a leading hard disk drive industry marketing consultancy segmented the industry according to MBs (decimal sense) of capacity.[25]
One of the earliest hard disk drives in personal computing history, the Seagate ST-412, was specified as Formatted: 10.0 Megabytes.[26] The drive contains four heads and active surfaces (tracks per cylinder), 306 cylinders. When formatted with a sector size of 256 bytes and 32 sectors/track it has a capacity of 10027008 bytes. This drive was one of several types installed in the IBM PC/XT[27] and extensively advertised and reported as a "10 MB" (formatted) hard disk drive.[28] The cylinder count of 306 is not conveniently close to any power of 1024; operating systems and programs using the customary binary prefixes show this as 9.5625 MB. Many later drives in the personal computer market used 17 sectors per track; still later, zone bit recording was introduced, causing the number of sectors per track to vary from the outer track to the inner.
The hard drive industry continues to use decimal prefixes for drive capacity, as well as for transfer rate. For example, a "300 GB" hard drive offers slightly more than 300×109, or 300000000000, bytes, not 300 × 230 (which would be about 322×109). Operating systems such as Microsoft Windows that display hard drive sizes using the customary binary prefix "GB" (as it is used for RAM) would display this as "279.4 GB" (meaning 279.4 × 10243 bytes, or 279.4 × 1073741824 B). On the other hand, macOS has since version 10.6 shown hard drive size using decimal prefixes (thus matching the drive makers' packaging). (Previous versions of Mac OS X used binary prefixes.)
Disk drive manufacturers sometimes use both IEC and SI prefixes with their standardized meanings. Seagate has specified data transfer rates in select manuals of some hard drives with both units, with the conversion between units clearly shown and the numeric values adjusted accordingly.[29] "Advanced Format" drives uses the term "4K sectors", which it defines as having size of "4096 (4K) bytes".[30]
Information transfer and clock rates
Computer clock frequencies are always quoted using SI prefixes in their decimal sense. For example, the internal clock frequency of the original IBM PC was 4.77 MHz, that is 4770000 Hz. Similarly, digital information transfer rates are quoted using decimal prefixes:
- The ATA-100 disk interface refers to 100000000 bytes per second
- A "56K" modem refers to 56000 bits per second
- SATA-2 has a raw bit rate of 3 Gbit/s = 3000000000 bits per second
- PC2-6400 RAM transfers 6400000000 bytes per second
- Firewire 800 has a raw rate of 800000000 bits per second
- In 2011, Seagate specified the sustained transfer rate of some hard disk drive models with both decimal and IEC binary prefixes.[29]
Historical standardization of dual definitions
By the mid-1970s it was common to see K meaning 1024 and the occasional M meaning 1048576 for words or bytes of main memory (RAM) while K and M were commonly used with their decimal meaning for disk storage. In the 1980s, as capacities of both types of devices increased, the SI prefix G, with SI meaning, was commonly applied to disk storage, while M in its binary meaning, became common for computer memory. In the 1990s, the prefix G, in its binary meaning, became commonly used for computer memory capacity. The first terabyte (SI prefix, 1000000000000 bytes) hard disk drive was introduced in 2007.[31]
The dual usage of the kilo (K), mega (M), and giga (G) prefixes as both powers of 1000 and powers of 1024 has been recorded in standards and dictionaries. For example, the obsolete standard ANSI/IEEE Std 1084-1986[32] defined dual uses for kilo and mega.
kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 210, or 1024.
mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 220, or 1048576.
The binary units Kbyte and Mbyte were formally defined in the obsolete standard ANSI/IEEE Std 1212-1991.[33]
Many dictionaries have noted the practice of using customary prefixes to indicate binary multiples.[34][35] Oxford online dictionary historically defined, for example, megabyte as: "Computing: a unit of information equal to one million or (strictly) 1048576 bytes."[36]
The units Kbyte, Mbyte, and Gbyte were found in the trade press and in IEEE journals. Gigabyte was formally defined in obsolete standard IEEE Std 610.10-1994 as either 1000000000 or 230 bytes.[37] Kilobyte, Kbyte, and KB were all defined in the obsolete standard IEEE 100–2000.[38]
The hardware industry measures system memory (RAM) using the binary meaning while magnetic disk storage uses the SI definition. However, many exceptions exist. Labeling of one type of diskette uses the megabyte to denote 1024 × 1000 bytes.[39] In the optical disks market, compact discs use MB to mean 10242 bytes while DVDs use GB to mean 10003 bytes.[40][41]
Inconsistent use of units
Deviation between powers of 1024 and powers of 1000
Computer storage has become cheaper per unit and thereby larger, by many orders of magnitude since "K" was first used to mean 1024. Because both the SI and "binary" meanings of kilo, mega, etc., are based on powers of 1000 or 1024 rather than simple multiples, the difference between 1M "binary" and 1M "decimal" is proportionally larger than that between 1K "binary" and 1k "decimal", and so on up the scale. The relative difference between the values in the binary and decimal interpretations increases, when using the SI prefixes as the base, from 2.4% for kilo to nearly 27% for the quetta prefix. Although the prefixes ronna and quetta have been defined, as of 2022 no names have been officially assigned to the corresponding binary prefixes.
Prefix | Binary ÷ Decimal | Decimal ÷ Binary | |||
---|---|---|---|---|---|
kilo | kibi | 1.024 (+2.4%) | 0.9766 (−2.3%) | ||
mega | mebi | 1.049 (+4.9%) | 0.9537 (−4.6%) | ||
giga | gibi | 1.074 (+7.4%) | 0.9313 (−6.9%) | ||
tera | tebi | 1.100 (+10.0%) | 0.9095 (−9.1%) | ||
peta | pebi | 1.126 (+12.6%) | 0.8882 (−11.2%) | ||
exa | exbi | 1.153 (+15.3%) | 0.8674 (−13.3%) | ||
zetta | zebi | 1.181 (+18.1%) | 0.8470 (−15.3%) | ||
yotta | yobi | 1.209 (+20.9%) | 0.8272 (−17.3%) | ||
ronna | — | 1.238 (+23.8%) | 0.8078 (−19.2%) | ||
quetta | — | 1.268 (+26.8%) | 0.7889 (−21.1%) |
Consumer confusion
In the early days of computers (roughly, prior to the advent of personal computers) there was little or no consumer confusion because of the technical sophistication of the buyers and their familiarity with the products. In addition, it was common for computer manufacturers to specify their products with capacities in full precision.[42]
In the personal computing era, one source of consumer confusion is the difference in the way many operating systems display hard drive sizes, compared to the way hard drive manufacturers describe them. Hard drives are specified and sold using "GB" and "TB" in their decimal meaning: one billion and one trillion bytes. Many operating systems and other software, however, display hard drive and file sizes using "MB", "GB" or other SI-looking prefixes in their binary sense, just as they do for displays of RAM capacity. For example, many such systems display a hard drive marketed as "1 TB" as "931 GB". The earliest known presentation of hard disk drive capacity by an operating system using "KB" or "MB" in a binary sense is 1984;[43] earlier operating systems generally presented the hard disk drive capacity as an exact number of bytes, with no prefix of any sort, for example, in the output of the DOS command 'CHKDSK'.
Legal disputes
The different interpretations of disk size prefixes has led to class action lawsuits against digital storage manufacturers. These cases involved both flash memory and hard disk drives.
Early cases
Early cases (2004–2007) were settled prior to any court ruling with the manufacturers admitting no wrongdoing but agreeing to clarify the storage capacity of their products on the consumer packaging. Accordingly, many flash memory and hard disk manufacturers have disclosures on their packaging and web sites clarifying the formatted capacity of the devices or defining MB as 1 million bytes and 1 GB as 1 billion bytes.[44][45][46][47]
Willem Vroegh v. Eastman Kodak Company
On 20 February 2004, Willem Vroegh filed a lawsuit against Lexar Media, Dane–Elec Memory, Fuji Photo Film USA, Eastman Kodak Company, Kingston Technology Company, Inc., Memorex Products, Inc.; PNY Technologies Inc., SanDisk Corporation, Verbatim Corporation, and Viking Interworks alleging that their descriptions of the capacity of their flash memory cards were false and misleading.
Vroegh claimed that a 256 MB Flash Memory Device had only 244 MB of accessible memory. "Plaintiffs allege that Defendants marketed the memory capacity of their products by assuming that one megabyte equals one million bytes and one gigabyte equals one billion bytes." The plaintiffs wanted the defendants to use the customary values of 10242 for megabyte and 10243 for gigabyte. The plaintiffs acknowledged that the IEC and IEEE standards define a MB as one million bytes but stated that the industry has largely ignored the IEC standards.[48]
The parties agreed that manufacturers could continue to use the decimal definition so long as the definition was added to the packaging and web sites.[49] The consumers could apply for "a discount of ten percent off a future online purchase from Defendants' Online Stores Flash Memory Device".[50]
Orin Safier v. Western Digital Corporation
On 7 July 2005, an action entitled Orin Safier v. Western Digital Corporation, et al. was filed in the Superior Court for the City and County of San Francisco, Case No. CGC-05-442812. The case was subsequently moved to the Northern District of California, Case No. 05-03353 BZ.[51]
Although Western Digital maintained that their usage of units is consistent with "the indisputably correct industry standard for measuring and describing storage capacity", and that they "cannot be expected to reform the software industry", they agreed to settle in March 2006 with 14 June 2006 as the Final Approval hearing date.[52]
Western Digital offered to compensate customers with a free download of backup and recovery software valued at US$30. They also paid $500000 in fees and expenses to San Francisco lawyers Adam Gutride and Seth Safier, who filed the suit. The settlement called for Western Digital to add a disclaimer to their later packaging and advertising.[53][54][55]
Cho v. Seagate Technology (US) Holdings, Inc.
A lawsuit (Cho v. Seagate Technology (US) Holdings, Inc., San Francisco Superior Court, Case No. CGC-06-453195) was filed against Seagate Technology, alleging that Seagate overrepresented the amount of usable storage by 7% on hard drives sold between 22 March 2001 and 26 September 2007. The case was settled without Seagate admitting wrongdoing, but agreeing to supply those purchasers with free backup software or a 5% refund on the cost of the drives.[56]
Dinan et al. v. SanDisk LLC
On 22 January 2020, the district court of the Northern District of California ruled in favor of the defendant, SanDisk, upholding its use of "GB" to mean 1000000000 bytes.[3]
Unique binary prefixes
Early suggestions
While early computer scientists typically used k to mean 1000, some recognized the convenience that would result from working with multiples of 1024 and the confusion that resulted from using the same prefixes for two different meanings.
Several proposals for unique binary prefixes[defn. 2] were made in 1968. Donald Morrison proposed to use the Greek letter kappa (κ) to denote 1024, κ2 to denote 10242, and so on.[57] (At the time, memory size was small, and only K was in widespread use.) Wallace Givens responded with a proposal to use bK as an abbreviation for 1024 and bK2 or bK2 for 10242, though he noted that neither the Greek letter nor lowercase letter b would be easy to reproduce on computer printers of the day.[58] Bruce Alan Martin of Brookhaven National Laboratory further proposed that the prefixes be abandoned altogether, and the letter B be used for base-2 exponents, similar to E in decimal scientific notation, to create shorthands like 3B20 for 3 × 220,[59] a convention still used on some calculators to present binary floating point-numbers today.[60]
None of these gained much acceptance, and capitalization of the letter K became the de facto standard for indicating a factor of 1024 instead of 1000, although this could not be extended to higher powers.
As the discrepancy between the two systems increased in the higher-order powers, more proposals for unique prefixes were made. In 1996, Markus Kuhn proposed a system with di prefixes, like the "dikilobyte" (K2B or K2B).[61] Donald Knuth, who uses decimal notation like 1 MB = 1000 kB,[62] proposed that the powers of 1024 be designated as "large kilobytes" and "large megabytes", with abbreviations KKB and MMB.[63] Double prefixes were already abolished from SI, however, having a multiplicative meaning ("MMB" would be equivalent to "TB"), and this proposed usage never gained any traction.
IEC prefixes
The set of binary prefixes that were eventually adopted, now referred to as the "IEC prefixes",[defn. 4] were first proposed by the International Union of Pure and Applied Chemistry's (IUPAC) Interdivisional Committee on Nomenclature and Symbols (IDCNS) in 1995. At that time, it was proposed that the terms kilobyte and megabyte be used only for 103 bytes and 106 bytes, respectively. The new prefixes kibi (kilobinary), mebi (megabinary), gibi (gigabinary) and tebi (terabinary) were also proposed at the time, and the proposed symbols for the prefixes were kb, Mb, Gb and Tb respectively, rather than Ki, Mi, Gi and Ti.[64] The proposal was not accepted at the time.
The Institute of Electrical and Electronics Engineers (IEEE) began to collaborate with the International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC) to find acceptable names for binary prefixes. IEC proposed kibi, mebi, gibi and tebi, with the symbols Ki, Mi, Gi and Ti respectively, in 1996.[65]
The names for the new prefixes are derived from the original SI prefixes combined with the term binary, but contracted, by taking the first two letters of the SI prefix and "bi" from binary. The first letter of each such prefix is identical to the corresponding SI prefix, except that "k" is capitalised to "K".
The IEEE decided that their standards would use the prefixes kilo, etc. with their metric definitions, but allowed the binary definitions to be used in an interim period as long as such usage was explicitly pointed out on a case-by-case basis.[66]
Adoption by IEC, NIST and ISO
In January 1999, the IEC published the first international standard (IEC 60027-2 Amendment 2) with the new prefixes, extended up to pebi (Pi) and exbi (Ei).[67][68]
The IEC 60027-2 Amendment 2 also states that the IEC position is the same as that of BIPM (the body that regulates the SI system); the SI prefixes retain their definitions in powers of 1000 and are never used to mean a power of 1024.
In usage, products and concepts typically described using powers of 1024 would continue to be, but with the new IEC prefixes. For example, a memory module of 536870912 bytes (512 × 1048576) would be referred to as 512 MiB or 512 mebibytes instead of 512 MB or 512 megabytes. Conversely, since hard drives have historically been marketed using the SI convention that "giga" means 1000000000, a "500 GB" hard drive would still be labeled as such. According to these recommendations, operating systems and other software would also use binary and SI prefixes in the same way, so the purchaser of a "500 GB" hard drive would find the operating system reporting either "500 GB" or "466 GiB", while 536870912 bytes of RAM would be displayed as "512 MiB".
The second edition of the standard, published in 2000,[69] defined them only up to exbi,[70] but in 2005, the third edition added prefixes zebi and yobi, thus matching all then-defined SI prefixes with binary counterparts.[71]
The harmonized ISO/IEC IEC 80000-13:2008 standard cancels and replaces subclauses 3.8 and 3.9 of IEC 60027-2:2005 (those defining prefixes for binary multiples). The only significant change is the addition of explicit definitions for some quantities.[72] In 2009, the prefixes kibi-, mebi-, etc. were defined by ISO 80000-1 in their own right, independently of the kibibyte, mebibyte, and so on.
The BIPM standard JCGM 200:2012 "International vocabulary of metrology – Basic and general concepts and associated terms (VIM), 3rd edition" lists the IEC binary prefixes and states "SI prefixes refer strictly to powers of 10, and should not be used for powers of 2. For example, 1 kilobit should not be used to represent 1024 bits (210 bits), which is 1 kibibit."[73]
IEC prefix | Representations | ||||
---|---|---|---|---|---|
Name | Symbol | Base 2 | Base 1024 | Value | Base 10 |
kibi | Ki | 210 | 10241 | 1024 | = 1.024×103 |
mebi | Mi | 220 | 10242 | 1048576 | ≈ 1.049×106 |
gibi | Gi | 230 | 10243 | 1073741824 | ≈ 1.074×109 |
tebi | Ti | 240 | 10244 | 1099511627776 | ≈ 1.100×1012 |
pebi | Pi | 250 | 10245 | 1125899906842624 | ≈ 1.126×1015 |
exbi | Ei | 260 | 10246 | 1152921504606846976 | ≈ 1.153×1018 |
zebi | Zi | 270 | 10247 | 1180591620717411303424 | ≈ 1.181×1021 |
yobi | Yi | 280 | 10248 | 1208925819614629174706176 | ≈ 1.209×1024 |
The additional decimal prefixes ronna- for 10009 and quetta- for 100010 were adopted by the International Bureau of Weights and Measures (BIPM) in 2022.[74][75] The natural binary counterparts to ronna- and quetta- were suggested in a consultation paper of the International Committee for Weights and Measures' Consultative Committee for Units (CCU) as robi- (Ri, 10249) and quebi- (Qi, 102410).[76] As of 2022, no corresponding binary prefixes have been adopted by the IEC and ISO.[77]
Other standards bodies and organizations
The IEC standard binary prefixes are now supported by other standardization bodies and technical organizations.
The United States National Institute of Standards and Technology (NIST) supports the ISO/IEC standards for "Prefixes for binary multiples" and has a web page[78] documenting them, describing and justifying their use. NIST suggests that in English, the first syllable of the name of the binary-multiple prefix should be pronounced in the same way as the first syllable of the name of the corresponding SI prefix, and that the second syllable should be pronounced as bee.[2] NIST has stated the SI prefixes "refer strictly to powers of 10" and that the binary definitions "should not be used" for them.[79]
The microelectronics industry standards body JEDEC describes the IEC prefixes in its online dictionary with a note: "The definitions of kilo, giga, and mega based on powers of two are included only to reflect common usage."[80] The JEDEC standards for semiconductor memory use the customary prefix symbols K, M and G in the binary sense.[81]
On 19 March 2005, the IEEE standard IEEE 1541-2002 ("Prefixes for Binary Multiples") was elevated to a full-use standard by the IEEE Standards Association after a two-year trial period.[82][83] However, as of April 2008, the IEEE Publications division does not require the use of IEC prefixes in its major magazines such as Spectrum[84] or Computer.[85]
The International Bureau of Weights and Measures (BIPM), which maintains the International System of Units (SI), expressly prohibits the use of SI prefixes to denote binary multiples, and recommends the use of the IEC prefixes as an alternative since units of information are not included in SI.[86][87]
The Society of Automotive Engineers (SAE) prohibits the use of SI prefixes with anything but a power-of-1000 meaning, but does not recommend or otherwise cite the IEC binary prefixes.[88]
The European Committee for Electrotechnical Standardization (CENELEC) adopted the IEC-recommended binary prefixes via the harmonization document HD 60027-2:2003-03.[89] The European Union (EU) has required the use of the IEC binary prefixes since 2007.[90]
Current practice in information technology
Most computer hardware uses SI prefixes[defn. 1] to state capacity and define other performance parameters such as data rate. Main and cache memories are notable exceptions.
Capacities of main memory and cache memory are usually expressed with customary binary prefixes[defn. 5][91][92][93] On the other hand, flash memory, like that found in solid state drives, mostly uses SI prefixes[defn. 1] to state capacity.
Some operating systems and other software continue to use the customary binary prefixes in displays of memory, disk storage capacity, and file size, but SI prefixes[defn. 1] in other areas such as network communication speeds and processor speeds.
In the following subsections, unless otherwise noted, examples are first given using the common prefixes used in each case, and then followed by interpretation using other notation where appropriate.
Operating systems
Prior to the release of Macintosh System Software (1984), file sizes were typically reported by the operating system without any prefixes.[citation needed] Today, most operating systems report file sizes with prefixes.
- The Linux kernel uses standards-compliant decimal and binary prefixes when booting up.[94][95] However, many Unix-like system utilities, such as the ls command, use powers of 1024 indicated as K/M (customary binary prefixes) if called with the "-h"
option. They give the exact value in bytes otherwise. The GNU versions
will also use powers of 10 indicated with k/M if called with the "--si" option.
- The Ubuntu Linux distribution uses the IEC prefixes for base-2 numbers as of the 10.10 release.[96][97]
- Microsoft Windows reports file sizes and disk device capacities using the customary binary prefixes or, in a "Properties" dialog, using the exact value in bytes.
- iOS 10 and earlier, Mac OS X Leopard and earlier and watchOS use the binary system (1 GB = 1073741824 bytes). Apple product specifications, iOS and macOS (including Mac OS X Snow Leopard: version 10.6) now report sizes using SI decimal prefixes (1 GB = 1000000000 bytes).[98][99]
Software
As of February 2010, most software did not distinguish symbols for binary and decimal prefixes.[defn. 3] The IEC binary naming convention is used by some to make this distinction.
One of the stated goals of the introduction of the IEC prefixes was "to preserve the SI prefixes as unambiguous decimal multipliers".[82] Programs such as fdisk/cfdisk, parted, and apt-get use SI prefixes with their decimal meaning.
Deluge (BitTorrent client) uses IEC prefixes for data rates as well as file sizes
Example of the use of IEC binary prefixes in the Linux operating system displaying traffic volume on a network interface in kibibytes (KiB) and mebibytes (MiB), as obtained with the ifconfig utility:
eth0 Link encap:Ethernet [...] RX packets:254804 errors:0 dropped:0 overruns:0 frame:0 TX packets:756 errors:0 dropped:0 overruns:0 carrier:0 [...] RX bytes:18613795 (17.7 MiB) TX bytes:45708 (44.6 KiB)
Software that uses IEC binary prefixes for powers of 1024 and uses standard SI prefixes for powers of 1000 includes:
Software that uses standard SI prefixes for powers of 1000, and does not use any prefixes for powers of 1024, includes:
Software that supports decimal prefixes for powers of 1000 and binary prefixes for powers of 1024 (but does not follow SI or IEC nomenclature for this) includes:
Computer hardware
Hardware types that use powers-of-1024 multipliers, such as memory, continue to be marketed with customary binary prefixes.
Computer memory
Measurements of most types of electronic memory such as RAM and ROM are given using customary binary prefixes (kilo, mega, and giga). This includes some flash memory, like EEPROMs. For example, a "512-megabyte" memory module is 512×220 bytes (512 × 1048576, or 536870912).
JEDEC Solid State Technology Association, the semiconductor engineering standardization body of the Electronic Industries Alliance (EIA), continues to include the customary binary definitions of kilo, mega and giga in their Terms, Definitions, and Letter Symbols document,[118] and uses those definitions in later memory standards[119][120][121][122][123] (See also JEDEC memory standards.)
Many computer programming tasks reference memory in terms of powers of two because of the inherent binary design of current hardware addressing systems. For example, a 16-bit processor register can reference at most 65536 items (bytes, words, or other objects); this is conveniently expressed as "64K" items. An operating system might map memory as 4096-byte pages, in which case exactly 8192 pages could be allocated within 33554432 bytes of memory: "8K" (8192) pages of "4 kilobytes" (4096 bytes) each within "32 megabytes" (32 MiB) of memory.
Hard disk drives
All hard disk drive manufacturers state capacity using SI prefixes.[defn. 1][124][125][126][127][128]
Flash drives
USB flash drives, flash-based memory cards like CompactFlash or Secure Digital, and flash-based solid-state drives (SSDs) use SI prefixes;[defn. 1] for example, a "256 MB" flash card provides at least 256 million bytes (256000000), not 256×1024×1024 (268435456).[47] The flash memory chips inside these devices contain considerably more than the quoted capacities, but much like a traditional hard drive, some space is reserved for internal functions of the flash drive. These include wear leveling, error correction, sparing, and metadata needed by the device's internal firmware.
Floppy drives
Floppy disks have existed in numerous physical and logical formats, and have been sized inconsistently. In part, this is because the end user capacity of a particular disk is a function of the controller hardware, so that the same disk could be formatted to a variety of capacities. In many cases, the media are marketed without any indication of the end user capacity, as for example, DSDD, meaning double-sided double-density.
The last widely adopted diskette was the 3.5-inch high density. This has a formatted capacity of 1474560 bytes or 1440 KB (1440 × 1024, using "KB" in the customary binary sense). These are marketed as "HD", or "1.44 MB" or both. This usage creates a third definition of "megabyte" as 1000×1024 bytes.
When these disks were commonplace, most operating systems displayed the capacity using "MB" in the customary binary sense, resulting in a display of "1.4 MB" (1.40625 MiB). Some users have noticed the missing 0.04 MB and both Apple and Microsoft have support bulletins referring to them as 1.4 MB.[39]
The earlier "1200 KB" (1200 × 1024 bytes) 5.25-inch diskette sold with the IBM PC AT was marketed as "1.2 MB" (1.171875 MiB). The largest 8-inch diskette formats could contain more than a megabyte, and the capacities of those devices were often irregularly specified in megabytes, also without controversy.
Older and smaller diskette formats were usually identified as an accurate number of (binary) KB, for example the Apple Disk II described as "140KB" had a 140 × 1024-byte capacity, and the original "360KB" double sided, double density disk drive used on the IBM PC had a 360 × 1024-byte capacity.
In many cases diskette hardware was marketed based on unformatted capacity, and the overhead required to format sectors on the media would reduce the nominal capacity as well (and this overhead typically varied based on the size of the formatted sectors), leading to more irregularities.
Optical discs
The capacities of most optical disc storage media like DVD, Blu-ray Disc, HD DVD and magneto-optical (MO) are given using SI decimal prefixes. A "4.7 GB" DVD has a nominal capacity of about 4.38 GiB.[41] However, CD capacities are always given using customary binary prefixes. Thus a "700-MB" (or "80-minute") CD has a nominal capacity of about 700 MiB (approximately 730 MB).[40]
Tape drives and media
Tape drive and media manufacturers use SI decimal prefixes to identify capacity.[129][130]
Data transmission and clock rates
Certain units are always used with SI decimal prefixes even in computing contexts. Two examples are hertz (Hz), which is used to measure the clock rates of electronic components, and to bit/s and B/s, which are used to measure data transmission speed.
- A 1 GHz processor receives 1000000000 clock ticks per second.
- A sound file sampled at 44.1 kHz has 44100 samples per second.
- A 128 kbit/s MP3 stream consumes 128000 bits (16 kilobytes, 15.6 KiB) per second.
- A 1 Mbit/s Internet connection can transfer 1000000 bits per second (125000 bytes per second ≈ 122 KiB/s, assuming an 8-bit byte and no overhead)
- A 1 Gbit/s Ethernet connection can transfer at nominal speed of 1000000000 bits per second (125000000 bytes per second ≈ 119 MiB/s, assuming an 8-bit byte and no overhead)
- A 56k modem transfers 56000 bits per second ≈ 6.8 KiB/s.
Bus clock speeds and therefore bandwidths are both quoted using SI decimal prefixes.
- PC3200 memory on a double data rate bus, transferring 8 bytes per cycle with a clock speed of 200 MHz (200000000 cycles per second) has a bandwidth of 200000000 × 8 × 2 = 3200000000 B/s = 3.2 GB/s (about 3.0 GiB/s).
- A PCI-X bus at 66 MHz (66000000 cycles per second), 64 bits per transfer, has a bandwidth of 66000000 transfers per second × 64 bits per transfer = 4224000000 bit/s, or 528000000 B/s, usually quoted as 528 MB/s (about 503 MiB/s).
Use by industry
IEC prefixes are used by Toshiba,[131] IBM, HP to advertise or describe some of their products. According to one HP brochure, [4][dead link] "[t]o reduce confusion, vendors are pursuing one of two remedies: they are changing SI prefixes to the new binary prefixes, or they are recalculating the numbers as powers of ten." The IBM Data Center also uses IEC prefixes to reduce confusion.[132] The IBM Style Guide reads[133]
To help avoid inaccuracy (especially with the larger prefixes) and potential ambiguity, the International Electrotechnical Commission (IEC) in 2000 adopted a set of prefixes specifically for binary multipliers (See IEC 60027-2). Their use is now supported by the United States National Institute of Standards and Technology (NIST) and incorporated into ISO 80000. They are also required by EU law and in certain contexts in the US. However, most documentation and products in the industry continue to use SI prefixes when referring to binary multipliers. In product documentation, follow the same standard that is used in the product itself (for example, in the interface or firmware). Whether you choose to use IEC prefixes for powers of 2 and SI prefixes for powers of 10, or use SI prefixes for a dual purpose ... be consistent in your usage and explain to the user your adopted system.
Other uses
The international standard ISO 80000-1 defines the prefixes kibi-, mebi-, gibi- ... without limiting their application to information technology. Uses of binary prefixes for quantities other than bits or bytes include their use to indicate binary multiples of the frequency unit hertz (Hz), for example the kibihertz (symbol KiHz) is 1024 Hz.[134][135]
See also
Definitions
- As used in this article, the term customary binary prefix or similar refers to prefixes such as kilo, mega, giga, etc., borrowed from the similarly named SI prefixes but used to denote a power of 1024.
References
Art. 8. Dans les poids et mesures de capacité, chacune des mesures décimales de ces deux genres aura son double et sa moitié, afin de donner à la vente des divers objets toute la commodité que l'on peut désirer. Il y aura donc le double-litre et le demi-litre, le double-hectogramme et le demi-hectogramme, et ainsi des autres.[Art. 8. In the weights and measures of capacity, each of the decimal measures of these two kinds will have its double and its half, in order to give to the sale of the various articles all the convenience that one can desire. There will therefore be the double-litre and the half-litre, the double-hectogram and the half-hectogram, and so on.]
Of 187 different relevant systems, 131 utilize a straight binary system internally, whereas 53 utilize the decimal system (primarily binary coded decimal) and 3 systems utilize a binary coded alphanumeric system of notation.This lengthy report describes many of the early computers.
On a 32K core size 704 computer, approximately 28000 data may be analyzed, ... without resorting to auxiliary tape storage.Note: the IBM 704 core memory units had 4096 36-bit words. Up to 32768 words could be installed
One type, designated as the small core memory (SCM) is a many bank coincident current type memory with a total of 64K words of 60 bit length (K=1024).
Central Memory is organized into 32K, 65K, or 131K words (60-bit) in 8, 16, or 32 banks of 4096 words each.
196K-word memory size
In computing and storage systems, a kB (kiloByte) is actually 1,024 (2^10) bytes, since the measurement is based on a base 2, or binary, number system. The term kB comes from the fact that 1,024 is nominally, or approximately, 1,000.
kB (kilobyte; actually 1024 bytes) KB (kilobyte; kB is preferred)
when describing the performance of IT systems the larger units 'kilobytes' (kB) [...] Strictly speaking, k means the 'binary thousand' 1024
Also, random access devices are advantageous over serial access devices for backing store applications only when the memory capacity is less than 1 Mbyte. For capacities of 4 Mbyte and 16 Mbyte serial access stores with shift register lengths of 256 bit and 1024 bit, respectively, look favorable.
All-monolithic storage ... (1024-bit NMOS) This new improvement of processor storage makes system expansion more economical. Real storage capacity is available in 512K increments ranging from 512K to 2,048K bytes.
memory size (8k bytes to 4 megabytes).
kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 210, or 1024. mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 220, or 1048576.
Kbyte. Kilobyte. Indicates 210 bytes. Mbyte. Megabyte. Indicates 220bytes. Gbyte is used in the Foreword.
gigabyte (gig, GB). This term may mean either a) 1000000000 bytes or b) 230 bytes. ... As used in this document, the terms kilobyte (kB) means 210 or 1024 bytes, megabyte (MB) means 1024 kilobytes, and gigabyte (GB) means 1024 megabytes.
up to 1,048,576 characters of information
[...] the industry-standard definition of a megabyte (MByte) for flash devices is one million (1,000,000) bytes, where the operating system uses two to the twentieth power, or 1,048,576 bytes. Similarly, for a gigabyte (GByte), the number is 1,000,000,000 and 1,073,741,824 respectively.
These devices contain the following number of bits: 4Gb has 4,294,967,296 bits ... 32Gb has 34,359,738,368 bitsFree registration required to download the standard.
This standard is prepared with two goals in mind: (1) to preserve the SI prefixes as unambiguous decimal multipliers and (2) to provide alternative prefixes for those cases where binary multipliers are needed. The first goal affects the general public, the wide audience of technical and nontechnical persons who use computers without much concern for their construction or inner working. These persons will normally interpret kilo, mega, etc., in their proper decimal sense. The second goal speaks to specialists – the prefixes for binary multiples make it possible for persons who work in the information sciences to communicate with precision.
1541-2002 (SCC14) IEEE Trial-Use Standard for Prefixes for Binary Multiples [No negative comments received during trial-use period, which is now complete; Sponsor requests elevation of status to full-use.] Recommendation: Elevate status of standard from trial-use to full-use. Editorial staff will be notified to implement the necessary changes. The standard will be due for a maintenance action in 2007.
[Side note:] These SI prefixes refer strictly to powers of 10. They should not be used to indicate powers of 2 (for example, one kilobit represents 1000 bits and not 1024 bits). The IEC has adopted prefixes for binary powers in the international standard IEC 60027-2: 2005, third edition, Letter symbols to be used in electrical technology – Part 2: Telecommunications and electronics. The names and symbols for the prefixes corresponding to 210, 220, 230, 240, 250, and 260 are, respectively: kibi, Ki; mebi, Mi; gibi, Gi; tebi, Ti; pebi, Pi; and exbi, Ei. Thus, for example, one kibibyte would be written: 1 KiB = 210 B = 1024 B, where B denotes a byte. Although these prefixes are not part of the SI, they should be used in the field of information technology to avoid the incorrect usage of the SI prefixes.
When the Linux kernel boots and says hda: 120064896 sectors (61473 MB) w/2048KiB Cache
the MB are megabytes and the KiB are kibibytes.
Since net-tools 1.60-4 ifconfig is printing byte counters and human readable counters with IEC 60027-2 units. So 1 KiB are 2^10 byte.
proper prefix for size
The definitions of kilo, giga, and mega based on powers of two are included only to reflect common usage. IEEE/ASTM SI 10-1997 states "This practice frequently leads to confusion and is deprecated."(Requires free registration and login.)
- Ainslie, Michael A.; Halvorsen, Michele B.; Robinson, Stephen P. (January 2022) [2021-11-09]. "A terminology standard for underwater acoustics and the benefits of international standardization". IEEE Journal of Oceanic Engineering. IEEE. 47 (1): 179–200. doi:10.1109/JOE.2021.3085947. eISSN 1558-1691. ISSN 0364-9059. S2CID 243948953. [3] (22 pages)
Further reading
- "When is a kilobyte a kibibyte? And an MB an MiB?". International Electrotechnical Commission. 2007-02-12. Archived from the original on 2009-04-03. – An introduction to binary prefixes
- "Prefixes for binary multiples". NIST.
- "Get Ready for the mebi, gibi and tebi" (Press release). NIST. 1999-03-02. Archived from the original on 2016-08-20. Retrieved 2017-07-13.
- Kuhn, Markus (1996-12-29). "What is a Megabyte ...?".—a 1996–1999 paper on bits, bytes, prefixes and symbols
- de Boyne Pollard, Jonathan. "There is no such thing as a 1.44 MB standard format floppy disc". Frequently Given Answers. Archived from the original on 2016-10-07.
- Michael Quinion (1999-08-21). "Kibibyte". World Wide Words. Archived from the original on 2004-06-12. Retrieved 2002-11-13.—Another description of binary prefixes
- James Wiebe (2003-10-09). "When One Billion does not equal One Billion, or: Why your computer's disk drive capacity doesn't appear to match the stated capacity" (PDF). WiebeTech (Press release). Archived from the original (PDF) on 2013-12-04. Retrieved 2010-01-22.—White-paper on the controversy over drive capacities
External links
- A plea for sanity
- A summary of the organizations, software, and so on that have implemented the new binary prefixes
- KiloBytes vs. kilobits vs. Kibibytes (Binary prefixes)
- SI/Binary Prefix Converter
- Storage Capacity Measurement Standards Archived 2015-01-02 at the Wayback Machine
https://en.wikipedia.org/wiki/Binary_prefix
https://en.wikipedia.org/wiki/Mirror_neuron
In computer disk storage, a sector is a subdivision of a track on a magnetic disk or optical disc. Each sector stores a fixed amount of user-accessible data, traditionally 512 bytes for hard disk drives (HDDs) and 2048 bytes for CD-ROMs and DVD-ROMs. Newer HDDs use 4096-byte (4 KiB) sectors, which are known as the Advanced Format (AF).
The sector is the minimum storage unit of a hard drive.[1] Most disk partitioning schemes are designed to have files occupy an integral number of sectors regardless of the file's actual size. Files that do not fill a whole sector will have the remainder of their last sector filled with zeroes. In practice, operating systems typically operate on blocks of data, which may span multiple sectors.[2]
Geometrically, the word sector means a portion of a disk between a center, two radii and a corresponding arc (see Figure 1, item B), which is shaped like a slice of a pie. Thus, the disk sector (Figure 1, item C) refers to the intersection of a track and geometrical sector.
In modern disk drives, each physical sector is made up of two basic parts, the sector header area (typically called "ID") and the data area. The sector header contains information used by the drive and controller; this information includes sync bytes, address identification, flaw flag and error detection and correction information. The header may also include an alternate address to be used if the data area is undependable. The address identification is used to ensure that the mechanics of the drive have positioned the read/write head over the correct location. The data area contains the sync bytes, user data and an error-correcting code (ECC) that is used to check and possibly correct errors that may have been introduced into the data.
History
This section needs additional citations for verification. (September 2021) |
The first disk drive, the 1957 IBM 350 disk storage, had ten 100 character sectors per track; each character was six bits and included a parity bit. The number of sectors per track was identical on all recording surfaces. There was no recorded identifier field (ID) associated with each sector.[3]
The 1961 IBM 1301 disk storage introduced variable length sectors, termed records by IBM, and added to each record a record address field separate from the data in a record (sector).[4][5] All modern disk drives have sector address fields, called ID fields, separate from the data in a sector.
Also in 1961 Bryant with its 4000 series introduced the concept of zoned recording which allowed the number of sectors per track to vary as a function of the track's diameter - there are more sectors on an outer track than on an inner track.[6] This became industry practice in the 1990s and is standard today.
The disk drives announced with the IBM System/360 in 1964 detected errors in all fields of their sectors (records) with a cyclic redundancy check (CRC) replacing parity per character detection of prior generations. IBM's sectors (records) at this time added a third field to the physical sector, a key field to aid in searching for data. These IBM physical sectors, called records, have three basic parts, a Count field which acts as an ID field, a Key field not present in most disk drive sectors and a Data field, frequently called the CKD format for a record.
The 1970 IBM 3330 disk storage replaced the CRC on the data field of each sector with an error correcting code (ECC) to improve data integrity by detecting most errors and allowing correction of many errors.[7] Ultimately all fields of disk sectors had ECCs.
Prior to the 1980s there was little standardization of sector sizes; disk drives had a maximum number of bits per track and various system manufacturers subdivided the track into different sector sizes to suit their OSes and applications. The popularity of the PC beginning in the 1980s and the advent of the IDE interface in the late 1980s led to a 512-byte sector becoming an industry standard sector size for HDDs and similar storage devices.
In the 1970s IBM added fixed-block architecture Direct Access Storage Devices (FBA DASDs) to its line of CKD DASD. CKD DASD supported multiple variable length sectors while the IBM FBA DASD supported sector sizes of 512, 1024, 2048, or 4096 bytes.
In 2000 the industry trade organization, International Disk Drive Equipment and Materials Association (IDEMA) started work to define the implementation and standards that would govern sector size formats exceeding 512 bytes to accommodate future increases in data storage capacities.[8] By the end of 2007 in anticipation of a future IDEMA standard, Samsung and Toshiba began shipments of 1.8-inch hard disk drives with 4096 byte sectors. In 2010 IDEMA completed the Advanced Format standard for 4096 sector drives,[8] setting the date for the transition from 512 to 4096 byte sectors as January 2011 for all manufacturers,[9] and Advanced Format drives soon became prevalent.
Related units
Sectors versus blocks
While sector specifically means the physical disk area, the term block
has been used loosely to refer to a small chunk of data. Block has
multiple meanings depending on the context. In the context of data
storage, a filesystem block
is an abstraction over disk sectors possibly encompassing multiple
sectors. In other contexts, it may be a unit of a data stream or a unit
of operation for a utility.[10] For example, the Unix program dd allows one to set the block size to be used during execution with the parameter bs=bytes
. This specifies the size of the chunks of data as delivered by dd, and is unrelated to sectors or filesystem blocks.
In Linux, disk sector size can be determined with sudo fdisk -l | grep "Sector size"
and block size can be determined with sudo blockdev --getbsz /dev/sda
.[11]
Sectors versus clusters
This section has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
|
In computer file systems, a cluster (sometimes also called allocation unit or block) is a unit of disk space allocation for files and directories. To reduce the overhead of managing on-disk data structures, the filesystem does not allocate individual disk sectors by default, but contiguous groups of sectors, called clusters.
On a disk that uses 512-byte sectors, a 512-byte cluster contains one sector, whereas a 4-kibibyte (KiB) cluster contains eight sectors.
A cluster is the smallest logical amount of disk space that can be allocated to hold a file. Storing small files on a filesystem with large clusters will therefore waste disk space; such wasted disk space is called slack space. For cluster sizes which are small versus the average file size, the wasted space per file will be statistically about half of the cluster size; for large cluster sizes, the wasted space will become greater. However, a larger cluster size reduces bookkeeping overhead and fragmentation, which may improve reading and writing speed overall. Typical cluster sizes range from 1 sector (512 B) to 128 sectors (64 KiB).
A cluster need not be physically contiguous on the disk; it may span more than one track or, if sector interleaving is used, may even be discontiguous within a track. This should not be confused with fragmentation, as the sectors are still logically contiguous.
A "lost cluster" occurs when a file is deleted from the directory listing, but the File Allocation Table (FAT) still shows the clusters allocated to the file.[12]
The term cluster was changed to allocation unit in DOS 4.0. However the term cluster is still widely used.[13]
Zone bit recording
If a sector is defined as the intersection between a radius and a track, as was the case with early hard drives and most floppy disks, the sectors towards the outside of the disk are physically longer than those nearer the spindle. Because each sector still contains the same number of bytes, the outer sectors have lower bit density than the inner ones, which is an inefficient use of the magnetic surface. The solution is zone bit recording, wherein the disk is divided into zones, each encompassing a small number of contiguous tracks. Each zone is then divided into sectors such that each sector has a similar physical size. Because outer zones have a greater circumference than inner zones, they are allocated more sectors. This is known as zoned bit recording.[14]
A consequence of zone bit recording is that contiguous reads and writes are noticeably faster on outer tracks (corresponding to lower block addresses) than on inner tracks, as more bits pass under the head with each rotation; this difference can be 25% or more.
Advanced Format
In 1998 the traditional 512-byte sector size was identified as one impediment to increasing capacity which at that time was growing at a rate exceeding Moore's Law. Increasing the length of the data field through the implementation of Advanced Format using 4096-byte sectors removed this impediment; it increased the efficiency of the data surface area by five to thirteen percent while increasing the strength of the ECC which in turn allowed higher capacity. The format was standardized by an industry consortium in 2005 and by 2011 incorporated in all new products of all hard drive manufacturers.
See also
References
- Kern Wong (January 1989), DP8459 Zoned Bit Recording (PDF), National Semiconductor, archived from the original (PDF) on 2011-06-15, retrieved 2010-03-10
https://en.wikipedia.org/wiki/Disk_sector
The JEDEC memory standards are the specifications for semiconductor memory circuits and similar storage devices promulgated by the Joint Electron Device Engineering Council (JEDEC) Solid State Technology Association, a semiconductor trade and engineering standardization organization.
JEDEC Standard 100B.01 specifies common terms, units, and other definitions in use in the semiconductor industry. JESC21-C specifies semiconductor memories from the 256 bit static RAM to DDR4 SDRAM modules.
JEDEC standardization goals
The Joint Electron Device Engineering Council characterizes its standardization efforts as follows:[1]
JEDEC standards and publications are designed to serve the public interest through eliminating misunderstandings between manufacturers and purchasers, facilitating interchangeability and improvement of products, and assisting the purchaser in selecting and obtaining with minimum delay the proper product for use by those other than JEDEC members, whether the standard is to be used either domestically or internationally.
JEDEC Standard 100B.01
The December 2002 JEDEC Standard 100B.01 is entitled Terms, Definitions, and Letter Symbols for Microcomputers, Microprocessors, and Memory Integrated Circuits. The purpose of the standard is to promote the uniform use of symbols, abbreviations, terms, and definitions throughout the semiconductor industry.[1]
Units of information
The specification defines the two common units of information:[2]
- The bit (b) is the smallest unit of information in the binary numeration system and is represented by the digits 0 and 1.
- The byte (B) is a binary character string typically operated upon as one unit. It is usually shorter than a computer word.
Unit prefixes for semiconductor storage capacity
The specification contains definitions of the commonly used prefixes kilo, mega, and giga "as a prefix to units of semiconductor storage capacity" to designate multiples of the units.
The specification cites three prefixes as follows:
- kilo (K): A multiplier equal to 1024 (210).[3]
- mega (M): A multiplier equal to 1048576 (220 or K2, where K = 1024).[4]
- giga (G): A multiplier equal to 1073741824 (230 or K3, where K = 1024).[5]
The specification notes that these prefixes are included in the document only to reflect common usage. It refers to the IEEE/ASTM SI 10-1997 standard as stating that "this practice frequently leads to confusion and is deprecated". The JEDEC specification takes no explicit position on this usage. The document further refers to the description of the IEC binary prefixes in Amendment 2 of IEC 60027-2, "Letter symbols to be used in electrical technology", for an alternate system of prefixes[notes 1] and includes a table of the IEC prefixes in the note. However the JEDEC specification does not explicitly include the IEC prefixes in the list of general terms and definitions.
The document notes that these prefixes are used in their decimal sense for serial communication data rates measured in bits.
JESD21-C
The standard JESD21-C: Configurations for Solid State Memories is maintained by JEDEC committee JC41. This committee consists of members from manufacturers of microprocessors, memory ICs, memory modules, and other components, as well as component integrators, such as video card and personal computer makers. Standard 21 is published in loose-leaf binder format to accommodate frequent updates.
The documentation of modern memory modules, such as the standards for the memory ICs[6] and a reference design of the module[7] requires over one hundred pages. The standards specify the physical and electrical characteristics of the modules, and include the data for computer simulations of the memory module operating in a system.[8]
Memory modules of the DDR2-SDRAM type are available for laptop, desktop, and server computers in a wide selection of capacities and access speeds. The standards specify memory module label formats for end-user markets.[9] For example:
1GB 2Rx4 PC2-3200P-333-11-D2 is a 1 GB DDR2 Registered DIMM, with address/command parity function, using 2 ranks of x4 SDRAMs operational to PC2-3200 performance with CAS Latency = 3, tRCD = 3, tRP = 3, using JEDEC SPD revision 1.1, raw card reference design file D revision 2 used for the assembly.
Storage capacities
The JEDEC terms dictionary includes definitions for prefixes kibi (Ki), mebi (Mi), gibi (Gi) and tebi (Ti) as powers of 2, and kilo, mega, giga and tera as powers of 10.[10] For example,
- 240 tebi Ti tera + binary: (210)4 = 1099511627776 tera: (103)4
The JEDEC DDR3 SDRAM standard JESD-79-3f uses Mb and Gb to specify binary memory capacity:[11] "The purpose of this Standard is to define the minimum set of requirements for JEDEC compliant 512 Mb through 8 Gb for x4, x8, and x16 DDR3 SDRAM devices."
See also
Notes
- Quote from JEDEC Standard 100B.01, page 8:
The definitions of kilo, giga, and mega based on powers of two are included only to reflect common usage. IEEE/ASTM SI 10-1997 states "This practice frequently leads to confusion and is deprecated." Further confusion results from the popular use of the megabyte representing 1 024 000 bytes to define the capacity of the 1.44-MB high-density diskette. An alternative system is found in Amendment 2 to IEC 60027-2: Letter symbols to be used in electrical technology – Part 2.
References
- "DDR3 SDRAM STANDARD | JESD79-3F". JEDEC. Jul 2012. Retrieved 2022-08-21.
External links
https://en.wikipedia.org/wiki/JEDEC_memory_standards
This is a list of some binary codes that are (or have been) used to represent text as a sequence of binary digits "0" and "1". Fixed-width binary codes use a set number of bits to represent each character in the text, while in variable-width binary codes, the number of bits may vary from character to character. the binary codes are used to read the computer language.
Five-bit binary codes
Several different five-bit codes were used for early punched tape systems.
Five bits per character only allows for 32 different characters, so many of the five-bit codes used two sets of characters per value referred to as FIGS (figures) and LTRS (letters), and reserved two characters to switch between these sets. This effectively allowed the use of 60 characters.
Standard five-bit standard codes are:
- International Telegraph Alphabet No. 1 (ITA1) – Also commonly referred to as Baudot code[1]
- International Telegraph Alphabet No. 2 (ITA2) – Also commonly referred to as Murray code[1][2]
- American Teletypewriter code (USTTY) – A variant of ITA2 used in the USA[2]
- DIN 66006 – Developed for the presentation of ALGOL/ALCOR programs on paper tape and punch cards
The following early computer systems each used its own five-bit code:
- J. Lyons and Co. LEO (Lyon's Electronic Office)
- English Electric DEUCE
- University of Illinois at Urbana-Champaign ILLIAC
- ZEBRA
- EMI 1100
- Ferranti Mercury, Pegasus, and Orion systems[3]
The steganographic code, commonly known as Bacon's cipher uses groups of 5 binary-valued elements to represent letters of the alphabet.
Six-bit binary codes
Six bits per character allows 64 distinct characters to be represented.
Examples of six-bit binary codes are:
- International Telegraph Alphabet No. 4 (ITA4)[4]
- Six-bit BCD (Binary Coded Decimal), used by early mainframe computers.
- Six-bit ASCII subset of the primitive seven-bit ASCII
- Braille – Braille characters are represented using six dot positions, arranged in a rectangle. Each position may contain a raised dot or not, so Braille can be considered to be a six-bit binary code.
See also: Six-bit character codes
Seven-bit binary codes
Examples of seven-bit binary codes are:
- International Telegraph Alphabet No. 3 (ITA3) – derived from the Moore ARQ code, and also known as the RCA
- ASCII – The ubiquitous ASCII code was originally defined as a seven-bit character set. The ASCII article provides a detailed set of equivalent standards and variants. In addition, there are various extensions of ASCII to eight bits (see Eight-bit binary codes)
- CCIR 476 – Extends ITA2 from 5 to 7 bits, using the extra 2 bits as check digits[4]
- International Telegraph Alphabet No. 4 (ITA4)[4]
Eight-bit binary codes
- Extended ASCII – A number of standards extend ASCII to eight bits by adding a further 128 characters, such as:
- EBCDIC – Used in early IBM computers and current IBM i and System z systems.
10-bit binary codes
- AUTOSPEC – Also known as Bauer code. AUTOSPEC repeats a five-bit character twice, but if the character has odd parity, the repetition is inverted.[4]
- Decabit – A datagram of electronic pulses which are transmitted commonly through power lines. Decabit is mainly used in Germany and other European countries.
16-bit binary codes
- UCS-2 – An obsolete encoding capable of representing the basic multilingual plane of Unicode
32-bit binary codes
- UTF-32/UCS-4 – A four-bytes-per-character representation of Unicode
Variable-length binary codes
- UTF-8 – Encodes characters in a way that is mostly compatible with ASCII but can also encode the full repertoire of Unicode characters with sequences of up to four 8-bit bytes.
- UTF-16 – Extends UCS-2 to cover the whole of Unicode with sequences of one or two 16-bit elements
- GB 18030 – A full-Unicode variable-length code designed for compatibility with older Chinese multibyte encodings
- Huffman coding – A technique for expressing more common characters using shorter bit strings than are used for less common characters
Data compression systems such as Lempel–Ziv–Welch can compress arbitrary binary data. They are therefore not binary codes themselves but may be applied to binary codes to reduce storage needs
Other
- Morse code
is a variable-length telegraphy code, which traditionally uses a series
of long and short pulses to encode characters. It relies on gaps
between the pulses to provide separation between letters and words, as
the letter codes do not have the "prefix property".
This means that Morse code is not necessarily a binary system, but in a
sense may be a ternary system, with a 10 for a "dit" or a "dot", a 1110
for a dash, and a 00 for a single unit of separation. Morse code can be
represented as a binary stream by allowing each bit to represent one
unit of time. Thus a "dit" or "dot" is represented as a 1 bit, while a
"dah" or "dash" is represented as three consecutive 1 bits. Spaces
between symbols, letters, and words are represented as one, three, or
seven consecutive 0 bits. For example, "NO U" in Morse code is "— .
— — — . . —", which could be represented in binary as "1110100011101110111000000010101110". If, however, Morse code is represented as a ternary system, "NO U" would be represented as "1110|10|00|1110|1110|1110|00|00|00|10|10|1110".
See also
References
- "Telecipher Devices". John Savard's Home Page.
https://en.wikipedia.org/wiki/List_of_binary_codes
Category:Primitive types
This is a non-diffusing subcategory of Category:data types. It includes data types that can also be found in the parent category, or in diffusing subcategories of the parent. |
A list of all primitive types in programming languages.
Subcategories
This category has only the following subcategory.
F
- Floating point (1 C, 42 P)
Pages in category "Primitive types"
The following 15 pages are in this category, out of 15 total. This list may not reflect recent changes.
https://en.wikipedia.org/wiki/Category:Primitive_types
https://en.wikipedia.org/wiki/Category:Floating_point
https://en.wikipedia.org/wiki/Boolean_data_type
https://en.wikipedia.org/wiki/Primitive_data_type
https://en.wikipedia.org/wiki/First-class_function
https://en.wikipedia.org/wiki/Fixed-point_arithmetic
https://en.wikipedia.org/wiki/Pointer_(computer_programming)
https://en.wikipedia.org/wiki/Reference_(computer_science)
https://en.wikipedia.org/wiki/String_(computer_science)
https://en.wikipedia.org/wiki/Word_(computer_architecture)
https://en.wikipedia.org/wiki/Category:Data_unit
https://en.wikipedia.org/wiki/Category:Computing_terminology
https://en.wikipedia.org/wiki/Quantum_memory
https://en.wikipedia.org/wiki/NCR_315#Slab
https://en.wikipedia.org/wiki/Slab_allocation
Slab allocation is a memory management mechanism intended for the efficient memory allocation of objects. In comparison with earlier mechanisms, it reduces fragmentation caused by allocations and deallocations. This technique is used for retaining allocated memory containing a data object of a certain type for reuse upon subsequent allocations of objects of the same type. It is analogous to an object pool, but only applies to memory, not other resources.
Slab allocation was first introduced in the Solaris 2.4 kernel by Jeff Bonwick.[1] It is now widely used by many Unix and Unix-like operating systems including FreeBSD[2] and Linux.[3]
https://en.wikipedia.org/wiki/Slab_allocation
https://en.wikipedia.org/wiki/Fragmentation_(computing)
https://en.wikipedia.org/wiki/Object_pool_pattern
https://en.wikipedia.org/wiki/Syllable_(computing)
https://en.wikipedia.org/wiki/Ternary_numeral_system#Tryte
A ternary /ˈtɜːrnəri/ numeral system (also called base 3 or trinary) has three as its base. Analogous to a bit, a ternary digit is a trit (trinary digit). One trit is equivalent to log2 3 (about 1.58496) bits of information.
Although ternary most often refers to a system in which the three digits are all non–negative numbers; specifically 0, 1, and 2, the adjective also lends its name to the balanced ternary system; comprising the digits −1, 0 and +1, used in comparison logic and ternary computers.
Comparison to other bases
× | 1 | 2 | 10 | 11 | 12 | 20 | 21 | 22 | 100 |
---|---|---|---|---|---|---|---|---|---|
1 | 1 | 2 | 10 | 11 | 12 | 20 | 21 | 22 | 100 |
2 | 2 | 11 | 20 | 22 | 101 | 110 | 112 | 121 | 200 |
10 | 10 | 20 | 100 | 110 | 120 | 200 | 210 | 220 | 1000 |
11 | 11 | 22 | 110 | 121 | 202 | 220 | 1001 | 1012 | 1100 |
12 | 12 | 101 | 120 | 202 | 221 | 1010 | 1022 | 1111 | 1200 |
20 | 20 | 110 | 200 | 220 | 1010 | 1100 | 1120 | 1210 | 2000 |
21 | 21 | 112 | 210 | 1001 | 1022 | 1120 | 1211 | 2002 | 2100 |
22 | 22 | 121 | 220 | 1012 | 1111 | 1210 | 2002 | 2101 | 2200 |
100 | 100 | 200 | 1000 | 1100 | 1200 | 2000 | 2100 | 2200 | 10000 |
Representations of integer numbers in ternary do not get uncomfortably lengthy as quickly as in binary. For example, decimal 365 or senary 1405 corresponds to binary 101101101 (nine digits) and to ternary 111112 (six digits). However, they are still far less compact than the corresponding representations in bases such as decimal – see below for a compact way to codify ternary using nonary (base 9) and septemvigesimal (base 27).
Ternary | 1 | 2 | 10 | 11 | 12 | 20 | 21 | 22 | 100 |
---|---|---|---|---|---|---|---|---|---|
Binary | 1 | 10 | 11 | 100 | 101 | 110 | 111 | 1000 | 1001 |
Senary | 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 13 |
Decimal | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| |||||||||
Ternary | 101 | 102 | 110 | 111 | 112 | 120 | 121 | 122 | 200 |
Binary | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | 10000 | 10001 | 10010 |
Senary | 14 | 15 | 20 | 21 | 22 | 23 | 24 | 25 | 30 |
Decimal | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| |||||||||
Ternary | 201 | 202 | 210 | 211 | 212 | 220 | 221 | 222 | 1000 |
Binary | 10011 | 10100 | 10101 | 10110 | 10111 | 11000 | 11001 | 11010 | 11011 |
Senary | 31 | 32 | 33 | 34 | 35 | 40 | 41 | 42 | 43 |
Decimal | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 |
Ternary | 1 | 10 | 100 | 1000 | 10000 |
---|---|---|---|---|---|
Binary | 1 | 11 | 1001 | 11011 | 1010001 |
Senary | 1 | 3 | 13 | 43 | 213 |
Decimal | 1 | 3 | 9 | 27 | 81 |
Power | 30 | 31 | 32 | 33 | 34 |
| |||||
Ternary | 100000 | 1000000 | 10000000 | 100000000 | 1000000000 |
Binary | 11110011 | 1011011001 | 100010001011 | 1100110100001 | 100110011100011 |
Senary | 1043 | 3213 | 14043 | 50213 | 231043 |
Decimal | 243 | 729 | 2187 | 6561 | 19683 |
Power | 35 | 36 | 37 | 38 | 39 |
As for rational numbers, ternary offers a convenient way to represent 1/3 as same as senary (as opposed to its cumbersome representation as an infinite string of recurring digits in decimal); but a major drawback is that, in turn, ternary does not offer a finite representation for 1/2 (nor for 1/4, 1/8, etc.), because 2 is not a prime factor of the base; as with base two, one-tenth (decimal1/10, senary 1/14) is not representable exactly (that would need e.g. decimal); nor is one-sixth (senary 1/10, decimal 1/6).
Fraction | 1/2 | 1/3 | 1/4 | 1/5 | 1/6 | 1/7 | 1/8 | 1/9 | 1/10 | 1/11 | 1/12 | 1/13 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Ternary | 0.1 | 0.1 | 0.02 | 0.0121 | 0.01 | 0.010212 | 0.01 | 0.01 | 0.0022 | 0.00211 | 0.002 | 0.002 |
Binary | 0.1 | 0.01 | 0.01 | 0.0011 | 0.001 | 0.001 | 0.001 | 0.000111 | 0.00011 | 0.0001011101 | 0.0001 | 0.000100111011 |
Senary | 0.3 | 0.2 | 0.13 | 0.1 | 0.1 | 0.05 | 0.043 | 0.04 | 0.03 | 0.0313452421 | 0.03 | 0.024340531215 |
Decimal | 0.5 | 0.3 | 0.25 | 0.2 | 0.16 | 0.142857 | 0.125 | 0.1 | 0.1 | 0.09 | 0.083 | 0.076923 |
Sum of the digits in ternary as opposed to binary
The value of a binary number with n bits that are all 1 is 2n − 1.
Similarly, for a number N(b, d) with base b and d digits, all of which are the maximal digit value b − 1, we can write:
- N(b, d) = (b − 1)bd−1 + (b − 1)bd−2 + … + (b − 1)b1 + (b − 1)b0,
- N(b, d) = (b − 1)(bd−1 + bd−2 + … + b1 + 1),
- N(b, d) = (b − 1)M.
- bM = bd + bd−1 + … + b2 + b1 and
- −M = −bd−1 − bd−2 − … − b1 − 1, so
- bM − M = bd − 1, or
- M = bd − 1/b − 1.
Then
- N(b, d) = (b − 1)M,
- N(b, d) = (b − 1)(bd − 1)/b − 1,
- N(b, d) = bd − 1.
For a three-digit ternary number, N(3, 3) = 33 − 1 = 26 = 2 × 32 + 2 × 31 + 2 × 30 = 18 + 6 + 2.
Compact ternary representation: base 9 and 27
Nonary (base 9, each digit is two ternary digits) or septemvigesimal (base 27, each digit is three ternary digits) can be used for compact representation of ternary, similar to how octal and hexadecimal systems are used in place of binary.
Practical usage
In certain analog logic, the state of the circuit is often expressed ternary. This is most commonly seen in CMOS circuits, and also in transistor–transistor logic with totem-pole output. The output is said to either be low (grounded), high, or open (high-Z). In this configuration the output of the circuit is actually not connected to any voltage reference at all. Where the signal is usually grounded to a certain reference, or at a certain voltage level, the state is said to be high impedance because it is open and serves its own reference. Thus, the actual voltage level is sometimes unpredictable.
A rare "ternary point" in common use is for defensive statistics in American baseball (usually just for pitchers), to denote fractional parts of an inning. Since the team on offense is allowed three outs, each out is considered one third of a defensive inning and is denoted as .1. For example, if a player pitched all of the 4th, 5th and 6th innings, plus achieving 2 outs in the 7th inning, his innings pitched column for that game would be listed as 3.2, the equivalent of 3+2⁄3 (which is sometimes used as an alternative by some record keepers). In this usage, only the fractional part of the number is written in ternary form.[1][2]
Ternary numbers can be used to convey self-similar structures like the Sierpinski triangle or the Cantor set conveniently. Additionally, it turns out that the ternary representation is useful for defining the Cantor set and related point sets, because of the way the Cantor set is constructed. The Cantor set consists of the points from 0 to 1 that have a ternary expression that does not contain any instance of the digit 1.[3][4] Any terminating expansion in the ternary system is equivalent to the expression that is identical up to the term preceding the last non-zero term followed by the term one less than the last non-zero term of the first expression, followed by an infinite tail of twos. For example: 0.1020 is equivalent to 0.1012222... because the expansions are the same until the "two" of the first expression, the two was decremented in the second expansion, and trailing zeros were replaced with trailing twos in the second expression.
Ternary is the integer base with the lowest radix economy, followed closely by binary and quaternary. This is due to its proximity to the mathematical constant e. It has been used for some computing systems because of this efficiency. It is also used to represent three-option trees, such as phone menu systems, which allow a simple path to any branch.
A form of redundant binary representation called a binary signed-digit number system, a form of signed-digit representation, is sometimes used in low-level software and hardware to accomplish fast addition of integers because it can eliminate carries.[5]
Binary-coded ternary
Simulation of ternary computers using binary computers, or interfacing between ternary and binary computers, can involve use of binary-coded ternary (BCT) numbers, with two or three bits used to encode each trit.[6][7] BCT encoding is analogous to binary-coded decimal (BCD) encoding. If the trit values 0, 1 and 2 are encoded 00, 01 and 10, conversion in either direction between binary-coded ternary and binary can be done in logarithmic time.[8] A library of C code supporting BCT arithmetic is available.[9]
Tryte
Some ternary computers such as the Setun defined a tryte to be six trits[10] or approximately 9.5 bits (holding more information than the de facto binary byte).[11]
See also
References
- Brousentsov, N. P.; Maslov, S. P.; Ramil Alvarez, J.; Zhogolev, E. A. "Development of ternary computers at Moscow State University". Retrieved 2010-01-20.
Further reading
- Hayes, Brian (November–December 2001). "Third base" (PDF). American Scientist. Sigma Xi, the Scientific Research Society. 89 (6): 490–494. doi:10.1511/2001.40.3268. Archived (PDF) from the original on 2019-10-30. Retrieved 2020-04-12.
External links
- Ternary Arithmetic Archived 2011-05-14 at the Wayback Machine
- The ternary calculating machine of Thomas Fowler
- Ternary Base Conversion – includes fractional part, from Maths Is Fun
- Gideon Frieder's replacement ternary numeral system
https://en.wikipedia.org/wiki/Ternary_numeral_system#Tryte
https://en.wikipedia.org/wiki/Category:Memory_management_algorithms
https://en.wikipedia.org/wiki/Category:Automatic_memory_management
https://en.wikipedia.org/wiki/Unreachable_memory
https://en.wikipedia.org/wiki/Category:Ternary_computers
https://en.wikipedia.org/wiki/Three-valued_logic
https://en.wikipedia.org/wiki/Many-valued_logic
https://en.wikipedia.org/wiki/Nat_(unit)
https://en.wikipedia.org/wiki/Field_specification
https://en.wikipedia.org/wiki/Frame_(networking)
https://en.wikipedia.org/wiki/Effective_data_transfer_rate
https://en.wikipedia.org/wiki/Infinite-valued_logic
https://en.wikipedia.org/wiki/Fuzzy_logic
https://en.wikipedia.org/wiki/Probabilistic_logic
https://en.wikipedia.org/wiki/Many-valued_logic
https://en.wikipedia.org/wiki/Principle_of_bivalence
https://en.wikipedia.org/wiki/Finite-valued_logic
https://en.wikipedia.org/wiki/Principle_of_bivalence
In logic, a finite-valued logic (also finitely many-valued logic) is a propositional calculus in which truth values are discrete. Traditionally, in Aristotle's logic, the bivalent logic, also known as binary logic was the norm, as the law of the excluded middle precluded more than two possible values (i.e., "true" and "false") for any proposition.[1] Modern three-valued logic (ternary logic) allows for an additional possible truth value (i.e. "undecided").[2]
The term finitely many-valued logic is typically used to describe many-valued logic having three or more, but not infinite, truth values. The term finite-valued logic encompasses both finitely many-valued logic and bivalent logic.[3][4] Fuzzy logics, which allow for degrees of values between "true" and "false"), are typically not considered forms of finite-valued logic.[5] However, finite-valued logic can be applied in Boolean-valued modeling,[6][7] description logics,[8] and defuzzification[9][10] of fuzzy logic. A finite-valued logic is decidable (sure to determine outcomes of the logic when it is applied to propositions) if and only if it has a computational semantics.[11]
https://en.wikipedia.org/wiki/Finite-valued_logic
https://en.wikipedia.org/wiki/Description_logic
https://en.wikipedia.org/wiki/First-order_logic
https://en.wikipedia.org/wiki/Propositional_logic
https://en.wikipedia.org/wiki/Logical_connective
https://en.wikipedia.org/wiki/Atomic_formula
https://en.wikipedia.org/wiki/Well-formed_formula
In mathematical logic, propositional logic and predicate logic, a well-formed formula, abbreviated WFF or wff, often simply formula, is a finite sequence of symbols from a given alphabet that is part of a formal language.[1] A formal language can be identified with the set of formulas in the language.
A formula is a syntactic object that can be given a semantic meaning by means of an interpretation. Two key uses of formulas are in propositional logic and predicate logic.
https://en.wikipedia.org/wiki/Well-formed_formula
In mathematical logic, an atomic formula (also known as an atom or a prime formula) is a formula with no deeper propositional structure, that is, a formula that contains no logical connectives or equivalently a formula that has no strict subformulas. Atoms are thus the simplest well-formed formulas of the logic. Compound formulas are formed by combining the atomic formulas using the logical connectives.
The precise form of atomic formulas depends on the logic under consideration; for propositional logic, for example, a propositional variable is often more briefly referred to as an "atomic formula", but, more precisely, a propositional variable is not an atomic formula but a formal expression that denotes an atomic formula. For predicate logic, the atoms are predicate symbols together with their arguments, each argument being a term. In model theory, atomic formulas are merely strings of symbols with a given signature, which may or may not be satisfiable with respect to a given model.[1]
https://en.wikipedia.org/wiki/Atomic_formula
In logic, a logical connective (also called a logical operator, sentential connective, or sentential operator) is a logical constant. They can be used to connect logical formulas. For instance in the syntax of propositional logic, the binary connective can be used to join the two atomic formulas and , rendering the complex formula .
Common connectives include negation, disjunction, conjunction, and implication. In standard systems of classical logic, these connectives are interpreted as truth functions, though they receive a variety of alternative interpretations in nonclassical logics. Their classical interpretations are similar to the meanings of natural language expressions such as English "not", "or", "and", and "if", but not identical. Discrepancies between natural language connectives and those of classical logic have motivated nonclassical approaches to natural language meaning as well as approaches which pair a classical compositional semantics with a robust pragmatics.
A logical connective is similar to, but not equivalent to, a syntax commonly used in programming languages called a conditional operator.[1][better source needed]
https://en.wikipedia.org/wiki/Logical_connective
Propositional calculus is a branch of logic. It is also called propositional logic, statement logic, sentential calculus, sentential logic, or sometimes zeroth-order logic. It deals with propositions (which can be true or false) and relations between propositions, including the construction of arguments based on them. Compound propositions are formed by connecting propositions by logical connectives. Propositions that contain no logical connectives are called atomic propositions.
Unlike first-order logic, propositional logic does not deal with non-logical objects, predicates about them, or quantifiers. However, all the machinery of propositional logic is included in first-order logic and higher-order logics. In this sense, propositional logic is the foundation of first-order logic and higher-order logic.
Explanation
Logical connectives are found in natural languages. In English for example, some examples are "and" (conjunction), "or" (disjunction), "not" (negation) and "if" (but only when used to denote material conditional).
The following is an example of a very simple inference within the scope of propositional logic:
- Premise 1: If it's raining then it's cloudy.
- Premise 2: It's raining.
- Conclusion: It's cloudy.
Both premises and the conclusion are propositions. The premises are taken for granted, and with the application of modus ponens (an inference rule), the conclusion follows.
As propositional logic is not concerned with the structure of propositions beyond the point where they can't be decomposed any more by logical connectives, this inference can be restated replacing those atomic statements with statement letters, which are interpreted as variables representing statements:
- Premise 1:
- Premise 2:
- Conclusion:
The same can be stated succinctly in the following way:
When P is interpreted as "It's raining" and Q as "it's cloudy" the above symbolic expressions can be seen to correspond exactly with the original expression in natural language. Not only that, but they will also correspond with any other inference of this form, which will be valid on the same basis this inference is.
Propositional logic may be studied through a formal system in which formulas of a formal language may be interpreted to represent propositions. A system of axioms and inference rules allows certain formulas to be derived. These derived formulas are called theorems and may be interpreted to be true propositions. A constructed sequence of such formulas is known as a derivation or proof and the last formula of the sequence is the theorem. The derivation may be interpreted as proof of the proposition represented by the theorem.
When a formal system is used to represent formal logic, only statement letters (usually capital roman letters such as , and ) are represented directly. The natural language propositions that arise when they're interpreted are outside the scope of the system, and the relation between the formal system and its interpretation is likewise outside the formal system itself.
In classical truth-functional propositional logic, formulas are interpreted as having precisely one of two possible truth values, the truth value of true or the truth value of false.[1] The principle of bivalence and the law of excluded middle are upheld. Truth-functional propositional logic defined as such and systems isomorphic to it are considered to be zeroth-order logic. However, alternative propositional logics are also possible. For more, see Other logical calculi below.
History
Although propositional logic (which is interchangeable with propositional calculus) had been hinted by earlier philosophers, it was developed into a formal logic (Stoic logic) by Chrysippus in the 3rd century BC[2] and expanded by his successor Stoics. The logic was focused on propositions. This advancement was different from the traditional syllogistic logic, which was focused on terms. However, most of the original writings were lost[3] and the propositional logic developed by the Stoics was no longer understood later in antiquity.[citation needed] Consequently, the system was essentially reinvented by Peter Abelard in the 12th century.[4]
Propositional logic was eventually refined using symbolic logic. The 17th/18th-century mathematician Gottfried Leibniz has been credited with being the founder of symbolic logic for his work with the calculus ratiocinator. Although his work was the first of its kind, it was unknown to the larger logical community. Consequently, many of the advances achieved by Leibniz were recreated by logicians like George Boole and Augustus De Morgan—completely independent of Leibniz.[5]
Just as propositional logic can be considered an advancement from the earlier syllogistic logic, Gottlob Frege's predicate logic can be also considered an advancement from the earlier propositional logic. One author describes predicate logic as combining "the distinctive features of syllogistic logic and propositional logic."[6] Consequently, predicate logic ushered in a new era in logic's history; however, advances in propositional logic were still made after Frege, including natural deduction, truth trees and truth tables. Natural deduction was invented by Gerhard Gentzen and Jan Łukasiewicz. Truth trees were invented by Evert Willem Beth.[7] The invention of truth tables, however, is of uncertain attribution.
Within works by Frege[8] and Bertrand Russell,[9] are ideas influential to the invention of truth tables. The actual tabular structure (being formatted as a table), itself, is generally credited to either Ludwig Wittgenstein or Emil Post (or both, independently).[8] Besides Frege and Russell, others credited with having ideas preceding truth tables include Philo, Boole, Charles Sanders Peirce,[10] and Ernst Schröder. Others credited with the tabular structure include Jan Łukasiewicz, Alfred North Whitehead, William Stanley Jevons, John Venn, and Clarence Irving Lewis.[9] Ultimately, some have concluded, like John Shosky, that "It is far from clear that any one person should be given the title of 'inventor' of truth-tables.".[9]
Terminology
In general terms, a calculus is a formal system that consists of a set of syntactic expressions (well-formed formulas), a distinguished subset of these expressions (axioms), plus a set of formal rules that define a specific binary relation, intended to be interpreted as logical equivalence, on the space of expressions.
When the formal system is intended to be a logical system, the expressions are meant to be interpreted as statements, and the rules, known to be inference rules, are typically intended to be truth-preserving. In this setting, the rules, which may include axioms, can then be used to derive ("infer") formulas representing true statements—from given formulas representing true statements.
The set of axioms may be empty, a nonempty finite set, or a countably infinite set (see axiom schema). A formal grammar recursively defines the expressions and well-formed formulas of the language. In addition a semantics may be given which defines truth and valuations (or interpretations).
The language of a propositional calculus consists of
- a set of primitive symbols, variously referred to as atomic formulas, placeholders, proposition letters, or variables, and
- a set of operator symbols, variously interpreted as logical operators or logical connectives.
A well-formed formula is any atomic formula, or any formula that can be built up from atomic formulas by means of operator symbols according to the rules of the grammar.
Mathematicians sometimes distinguish between propositional constants, propositional variables, and schemata. Propositional constants represent some particular proposition, while propositional variables range over the set of all atomic propositions. Schemata, however, range over all propositions. It is common to represent propositional constants by A, B, and C, propositional variables by P, Q, and R, and schematic letters are often Greek letters, most often φ, ψ, and χ.
Basic concepts
The following outlines a standard propositional calculus. Many different formulations exist which are all more or less equivalent, but differ in the details of:
- their language (i.e., the particular collection of primitive symbols and operator symbols),
- the set of axioms, or distinguished formulas, and
- the set of inference rules.
Any given proposition may be represented with a letter called a 'propositional constant', analogous to representing a number by a letter in mathematics (e.g., a = 5). All propositions require exactly one of two truth-values: true or false. For example, let P be the proposition that it is raining outside. This will be true (P) if it is raining outside, and false otherwise (¬P).
- We then define truth-functional operators, beginning with negation. ¬P represents the negation of P, which can be thought of as the denial of P. In the example above, ¬P expresses that it is not raining outside, or by a more standard reading: "It is not the case that it is raining outside." When P is true, ¬P is false; and when P is false, ¬P is true. As a result, ¬ ¬P always has the same truth-value as P.
- Conjunction is a truth-functional connective which forms a proposition out of two simpler propositions, for example, P and Q. The conjunction of P and Q is written P ∧ Q, and expresses that each are true. We read P ∧ Q as "P and Q". For any two propositions, there are four possible assignments of truth values:
- P is true and Q is true
- P is true and Q is false
- P is false and Q is true
- P is false and Q is false
- The conjunction of P and Q is true in case 1, and is false otherwise. Where P is the proposition that it is raining outside and Q is the proposition that a cold-front is over Kansas, P ∧ Q is true when it is raining outside and there is a cold-front over Kansas. If it is not raining outside, then P ∧ Q is false; and if there is no cold-front over Kansas, then P ∧ Q is also false.
- Disjunction resembles conjunction in that it forms a proposition out of two simpler propositions. We write it P ∨ Q, and it is read "P or Q". It expresses that either P or Q is true. Thus, in the cases listed above, the disjunction of P with Q is true in all cases—except case 4. Using the example above, the disjunction expresses that it is either raining outside, or there is a cold front over Kansas. (Note, this use of disjunction is supposed to resemble the use of the English word "or". However, it is most like the English inclusive "or", which can be used to express the truth of at least one of two propositions. It is not like the English exclusive "or", which expresses the truth of exactly one of two propositions. In other words, the exclusive "or" is false when both P and Q are true (case 1), and similarly is false when both P and Q are false (case 4). An example of the exclusive or is: You may have a bagel or a pastry, but not both. Often in natural language, given the appropriate context, the addendum "but not both" is omitted—but implied. In mathematics, however, "or" is always inclusive or; if exclusive or is meant it will be specified, possibly by "xor".)
- Material conditional also joins two simpler propositions, and we write P → Q, which is read "if P then Q". The proposition to the left of the arrow is called the antecedent, and the proposition to the right is called the consequent. (There is no such designation for conjunction or disjunction, since they are commutative operations.) It expresses that Q is true whenever P is true. Thus P → Q is true in every case above except case 2, because this is the only case when P is true but Q is not. Using the example, if P then Q expresses that if it is raining outside, then there is a cold-front over Kansas. The material conditional is often confused with physical causation. The material conditional, however, only relates two propositions by their truth-values—which is not the relation of cause and effect. It is contentious in the literature whether the material implication represents logical causation.
- Biconditional joins two simpler propositions, and we write P ↔ Q, which is read "P if and only if Q". It expresses that P and Q have the same truth-value, and in cases 1 and 4. 'P is true if and only if Q' is true, and is false otherwise.
It is very helpful to look at the truth tables for these different operators, as well as the method of analytic tableaux.
Closure under operations
Propositional logic is closed under truth-functional connectives. That is to say, for any proposition φ, ¬φ is also a proposition. Likewise, for any propositions φ and ψ, φ ∧ ψ is a proposition, and similarly for disjunction, conditional, and biconditional. This implies that, for instance, φ ∧ ψ is a proposition, and so it can be conjoined with another proposition. In order to represent this, we need to use parentheses to indicate which proposition is conjoined with which. For instance, P ∧ Q ∧ R is not a well-formed formula, because we do not know if we are conjoining P ∧ Q with R or if we are conjoining P with Q ∧ R. Thus we must write either (P ∧ Q) ∧ R to represent the former, or P ∧ (Q ∧ R) to represent the latter. By evaluating the truth conditions, we see that both expressions have the same truth conditions (will be true in the same cases), and moreover that any proposition formed by arbitrary conjunctions will have the same truth conditions, regardless of the location of the parentheses. This means that conjunction is associative, however, one should not assume that parentheses never serve a purpose. For instance, the sentence P ∧ (Q ∨ R) does not have the same truth conditions of (P ∧ Q) ∨ R, so they are different sentences distinguished only by the parentheses. One can verify this by the truth-table method referenced above.
Note: For any arbitrary number of propositional constants, we can form a finite number of cases which list their possible truth-values. A simple way to generate this is by truth-tables, in which one writes P, Q, ..., Z, for any list of k propositional constants—that is to say, any list of propositional constants with k entries. Below this list, one writes 2k rows, and below P one fills in the first half of the rows with true (or T) and the second half with false (or F). Below Q one fills in one-quarter of the rows with T, then one-quarter with F, then one-quarter with T and the last quarter with F. The next column alternates between true and false for each eighth of the rows, then sixteenths, and so on, until the last propositional constant varies between T and F for each row. This will give a complete listing of cases or truth-value assignments possible for those propositional constants.
Argument
The propositional calculus then defines an argument to be a list of propositions. A valid argument is a list of propositions, the last of which follows from—or is implied by—the rest. All other arguments are invalid. The simplest valid argument is modus ponens, one instance of which is the following list of propositions:
This is a list of three propositions, each line is a proposition, and the last follows from the rest. The first two lines are called premises, and the last line the conclusion. We say that any proposition C follows from any set of propositions , if C must be true whenever every member of the set is true. In the argument above, for any P and Q, whenever P → Q and P are true, necessarily Q is true. Notice that, when P is true, we cannot consider cases 3 and 4 (from the truth table). When P → Q is true, we cannot consider case 2. This leaves only case 1, in which Q is also true. Thus Q is implied by the premises.
This generalizes schematically. Thus, where φ and ψ may be any propositions at all,
Other argument forms are convenient, but not necessary. Given a complete set of axioms (see below for one such set), modus ponens is sufficient to prove all other argument forms in propositional logic, thus they may be considered to be a derivative. Note, this is not true of the extension of propositional logic to other logics like first-order logic. First-order logic requires at least one additional rule of inference in order to obtain completeness.
The significance of argument in formal logic is that one may obtain new truths from established truths. In the first example above, given the two premises, the truth of Q is not yet known or stated. After the argument is made, Q is deduced. In this way, we define a deduction system to be a set of all propositions that may be deduced from another set of propositions. For instance, given the set of propositions , we can define a deduction system, Γ, which is the set of all propositions which follow from A. Reiteration is always assumed, so . Also, from the first element of A, last element, as well as modus ponens, R is a consequence, and so . Because we have not included sufficiently complete axioms, though, nothing else may be deduced. Thus, even though most deduction systems studied in propositional logic are able to deduce , this one is too weak to prove such a proposition.
Generic description of a propositional calculus
A propositional calculus is a formal system , where:
- The alpha set is a countably infinite set of elements called proposition symbols or propositional variables. Syntactically speaking, these are the most basic elements of the formal language , otherwise referred to as atomic formulas or terminal elements. In the examples to follow, the elements of are typically the letters p, q, r, and so on.
- The omega set Ω is a finite set of elements called operator symbols or logical connectives. The set Ω is partitioned into disjoint subsets as follows:
In this partition, is the set of operator symbols of arity j.
In the more familiar propositional calculi, Ω is typically partitioned as follows:
A frequently adopted convention treats the constant logical values as operators of arity zero, thus:
- The zeta set is a finite set of transformation rules that are called inference rules when they acquire logical applications.
- The iota set is a countable set of initial points that are called axioms when they receive logical interpretations.
The language of , also known as its set of formulas, well-formed formulas, is inductively defined by the following rules:
- Base: Any element of the alpha set is a formula of .
- If are formulas and is in , then is a formula.
- Closed: Nothing else is a formula of .
Repeated applications of these rules permits the construction of complex formulas. For example:
- By rule 1, p is a formula.
- By rule 2, is a formula.
- By rule 1, q is a formula.
- By rule 2, is a formula.
Example 1. Simple axiom system
Let , where , , , are defined as follows:
- The set , the countably infinite set of symbols that serve to represent logical propositions:
- The functionally complete set
of logical operators (logical connectives and negation) is as follows.
Of the three connectives for conjunction, disjunction, and implication (, and →), one can be taken as primitive and the other two can be defined in terms of it and negation (¬).[11] Alternatively, all of the logical operators may be defined in terms of a sole sufficient operator, such as the Sheffer stroke (nand). The biconditional () can of course be defined in terms of conjunction and implication as .
Adopting negation and implication as the two primitive operations of a
propositional calculus is tantamount to having the omega set partition as follows:
Then is defined as , and is defined as .
- The set (the set of initial points of logical deduction, i.e., logical axioms) is the axiom system proposed by Jan Łukasiewicz, and used as the propositional-calculus part of a Hilbert system. The axioms are all substitution instances of:
- The set of transformation rules (rules of inference) is the sole rule modus ponens (i.e., from any formulas of the form and , infer ).
This system is used in Metamath set.mm formal proof database.
Example 2. Natural deduction system
Let , where , , , are defined as follows:
- The alpha set , is a countably infinite set of symbols, for example:
- The omega set partitions as follows:
In the following example of a propositional calculus, the transformation rules are intended to be interpreted as the inference rules of a so-called natural deduction system. The particular system presented here has no initial points, which means that its interpretation for logical applications derives its theorems from an empty axiom set.
- The set of initial points is empty, that is, .
- The set of transformation rules, , is described as follows:
Our propositional calculus has eleven inference rules. These rules allow us to derive other true formulas given a set of formulas that are assumed to be true. The first ten simply state that we can infer certain well-formed formulas from other well-formed formulas. The last rule however uses hypothetical reasoning in the sense that in the premise of the rule we temporarily assume an (unproven) hypothesis to be part of the set of inferred formulas to see if we can infer a certain other formula. Since the first ten rules don't do this they are usually described as non-hypothetical rules, and the last one as a hypothetical rule.
In describing the transformation rules, we may introduce a metalanguage symbol . It is basically a convenient shorthand for saying "infer that". The format is , in which Γ is a (possibly empty) set of formulas called premises, and ψ is a formula called conclusion. The transformation rule means that if every proposition in Γ is a theorem (or has the same truth value as the axioms), then ψ is also a theorem. Note that considering the following rule Conjunction introduction, we will know whenever Γ has more than one formula, we can always safely reduce it into one formula using conjunction. So for short, from that time on we may represent Γ as one formula instead of a set. Another omission for convenience is when Γ is an empty set, in which case Γ may not appear.
- Negation introduction
- From and , infer .
- That is, .
- Negation elimination
- From , infer .
- That is, .
- Double negation elimination
- From , infer p.
- That is, .
- Conjunction introduction
- From p and q, infer .
- That is, .
- Conjunction elimination
- From , infer p.
- From , infer q.
- That is, and .
- Disjunction introduction
- From p, infer .
- From q, infer .
- That is, and .
- Disjunction elimination
- From and and , infer r.
- That is, .
- Biconditional introduction
- From and , infer .
- That is, .
- Biconditional elimination
- From , infer .
- From , infer .
- That is, and .
- Modus ponens (conditional elimination)
- From p and , infer q.
- That is, .
- Conditional proof (conditional introduction)
- From [accepting p allows a proof of q], infer .
- That is, .
Basic and derived argument forms
Name | Sequent | Description |
---|---|---|
Modus Ponens | If p then q; p; therefore q | |
Modus Tollens | If p then q; not q; therefore not p | |
Hypothetical Syllogism | If p then q; if q then r; therefore, if p then r | |
Disjunctive Syllogism | Either p or q, or both; not p; therefore, q | |
Constructive Dilemma | If p then q; and if r then s; but p or r; therefore q or s | |
Destructive Dilemma | If p then q; and if r then s; but not q or not s; therefore not p or not r | |
Bidirectional Dilemma | If p then q; and if r then s; but p or not s; therefore q or not r | |
Simplification | p and q are true; therefore p is true | |
Conjunction | p and q are true separately; therefore they are true conjointly | |
Addition | p is true; therefore the disjunction (p or q) is true | |
Composition | If p then q; and if p then r; therefore if p is true then q and r are true | |
De Morgan's Theorem (1) | The negation of (p and q) is equiv. to (not p or not q) | |
De Morgan's Theorem (2) | The negation of (p or q) is equiv. to (not p and not q) | |
Commutation (1) | (p or q) is equiv. to (q or p) | |
Commutation (2) | (p and q) is equiv. to (q and p) | |
Commutation (3) | (p is equiv. to q) is equiv. to (q is equiv. to p) | |
Association (1) | p or (q or r) is equiv. to (p or q) or r | |
Association (2) | p and (q and r) is equiv. to (p and q) and r | |
Distribution (1) | p and (q or r) is equiv. to (p and q) or (p and r) | |
Distribution (2) | p or (q and r) is equiv. to (p or q) and (p or r) | |
Double Negation | and | p is equivalent to the negation of not p |
Transposition | If p then q is equiv. to if not q then not p | |
Material Implication | If p then q is equiv. to not p or q | |
Material Equivalence (1) | (p iff q) is equiv. to (if p is true then q is true) and (if q is true then p is true) | |
Material Equivalence (2) | (p iff q) is equiv. to either (p and q are true) or (both p and q are false) | |
Material Equivalence (3) | (p iff q) is equiv to., both (p or not q is true) and (not p or q is true) | |
Exportation[12] | from (if p and q are true then r is true) we can prove (if q is true then r is true, if p is true) | |
Importation | If p then (if q then r) is equivalent to if p and q then r | |
Tautology (1) | p is true is equiv. to p is true or p is true | |
Tautology (2) | p is true is equiv. to p is true and p is true | |
Tertium non datur (Law of Excluded Middle) | p or not p is true | |
Law of Non-Contradiction | p and not p is false, is a true statement |
Proofs in propositional calculus
One of the main uses of a propositional calculus, when interpreted for logical applications, is to determine relations of logical equivalence between propositional formulas. These relationships are determined by means of the available transformation rules, sequences of which are called derivations or proofs.
In the discussion to follow, a proof is presented as a sequence of numbered lines, with each line consisting of a single formula followed by a reason or justification for introducing that formula. Each premise of the argument, that is, an assumption introduced as an hypothesis of the argument, is listed at the beginning of the sequence and is marked as a "premise" in lieu of other justification. The conclusion is listed on the last line. A proof is complete if every line follows from the previous ones by the correct application of a transformation rule. (For a contrasting approach, see proof-trees).
Example of a proof in natural deduction system
- To be shown that A → A.
- One possible proof of this (which, though valid, happens to contain more steps than are necessary) may be arranged as follows:
Number | Formula | Reason |
---|---|---|
1 | premise | |
2 | From (1) by disjunction introduction | |
3 | From (1) and (2) by conjunction introduction | |
4 | From (3) by conjunction elimination | |
5 | Summary of (1) through (4) | |
6 | From (5) by conditional proof |
Interpret as "Assuming A, infer A". Read as "Assuming nothing, infer that A implies A", or "It is a tautology that A implies A", or "It is always true that A implies A".
Example of a proof in a classical propositional calculus system
We now prove the same theorem in the axiomatic system by Jan Łukasiewicz described above, which is an example of a Hilbert-style deductive system for the classical propositional calculus.
The axioms are:
- (A1)
- (A2)
- (A3)
And the proof is as follows:
- (instance of (A1))
- (instance of (A2))
- (from (1) and (2) by modus ponens)
- (instance of (A1))
- (from (4) and (3) by modus ponens)
Soundness and completeness of the rules
The crucial properties of this set of rules are that they are sound and complete. Informally this means that the rules are correct and that no other rules are required. These claims can be made more formal as follows. Note that the proofs for the soundness and completeness of the propositional logic are not themselves proofs in propositional logic ; these are theorems in ZFC used as a metatheory to prove properties of propositional logic.
We define a truth assignment as a function that maps propositional variables to true or false. Informally such a truth assignment can be understood as the description of a possible state of affairs (or possible world) where certain statements are true and others are not. The semantics of formulas can then be formalized by defining for which "state of affairs" they are considered to be true, which is what is done by the following definition.
We define when such a truth assignment A satisfies a certain well-formed formula with the following rules:
- A satisfies the propositional variable P if and only if A(P) = true
- A satisfies ¬φ if and only if A does not satisfy φ
- A satisfies (φ ∧ ψ) if and only if A satisfies both φ and ψ
- A satisfies (φ ∨ ψ) if and only if A satisfies at least one of either φ or ψ
- A satisfies (φ → ψ) if and only if it is not the case that A satisfies φ but not ψ
- A satisfies (φ ↔ ψ) if and only if A satisfies both φ and ψ or satisfies neither one of them
With this definition we can now formalize what it means for a formula φ to be implied by a certain set S of formulas. Informally this is true if in all worlds that are possible given the set of formulas S the formula φ also holds. This leads to the following formal definition: We say that a set S of well-formed formulas semantically entails (or implies) a certain well-formed formula φ if all truth assignments that satisfy all the formulas in S also satisfy φ.
Finally we define syntactical entailment such that φ is syntactically entailed by S if and only if we can derive it with the inference rules that were presented above in a finite number of steps. This allows us to formulate exactly what it means for the set of inference rules to be sound and complete:
Soundness: If the set of well-formed formulas S syntactically entails the well-formed formula φ then S semantically entails φ.
Completeness: If the set of well-formed formulas S semantically entails the well-formed formula φ then S syntactically entails φ.
For the above set of rules this is indeed the case.
Sketch of a soundness proof
(For most logical systems, this is the comparatively "simple" direction of proof)
Notational conventions: Let G be a variable ranging over sets of sentences. Let A, B and C range over sentences. For "G syntactically entails A" we write "G proves A". For "G semantically entails A" we write "G implies A".
We want to show: (A)(G) (if G proves A, then G implies A).
We note that "G proves A" has an inductive definition, and that gives us the immediate resources for demonstrating claims of the form "If G proves A, then ...". So our proof proceeds by induction.
- Basis. Show: If A is a member of G, then G implies A.
- Basis. Show: If A is an axiom, then G implies A.
- Inductive step (induction on n, the length of the proof):
- Assume for arbitrary G and A that if G proves A in n or fewer steps, then G implies A.
- For each possible application of a rule of inference at step n + 1, leading to a new theorem B, show that G implies B.
Notice that Basis Step II can be omitted for natural deduction systems because they have no axioms. When used, Step II involves showing that each of the axioms is a (semantic) logical truth.
The Basis steps demonstrate that the simplest provable sentences from G are also implied by G, for any G. (The proof is simple, since the semantic fact that a set implies any of its members, is also trivial.) The Inductive step will systematically cover all the further sentences that might be provable—by considering each case where we might reach a logical conclusion using an inference rule—and shows that if a new sentence is provable, it is also logically implied. (For example, we might have a rule telling us that from "A" we can derive "A or B". In III.a We assume that if A is provable it is implied. We also know that if A is provable then "A or B" is provable. We have to show that then "A or B" too is implied. We do so by appeal to the semantic definition and the assumption we just made. A is provable from G, we assume. So it is also implied by G. So any semantic valuation making all of G true makes A true. But any valuation making A true makes "A or B" true, by the defined semantics for "or". So any valuation which makes all of G true makes "A or B" true. So "A or B" is implied.) Generally, the Inductive step will consist of a lengthy but simple case-by-case analysis of all the rules of inference, showing that each "preserves" semantic implication.
By the definition of provability, there are no sentences provable other than by being a member of G, an axiom, or following by a rule; so if all of those are semantically implied, the deduction calculus is sound.
Sketch of completeness proof
(This is usually the much harder direction of proof.)
We adopt the same notational conventions as above.
We want to show: If G implies A, then G proves A. We proceed by contraposition: We show instead that if G does not prove A then G does not imply A. If we show that there is a model where A does not hold despite G being true, then obviously G does not imply A. The idea is to build such a model out of our very assumption that G does not prove A.
- G does not prove A. (Assumption)
- If G does not prove A, then we can construct an (infinite) Maximal Set, G∗, which is a superset of G and which also does not prove A.
- Place an ordering (with order type ω) on all the sentences in the language (e.g., shortest first, and equally long ones in extended alphabetical ordering), and number them (E1, E2, ...)
- Define a series Gn of sets (G0, G1, ...) inductively:
- If proves A, then
- If does not prove A, then
- Define G∗ as the union of all the Gn. (That is, G∗ is the set of all the sentences that are in any Gn.)
- It can be easily shown that
- G∗ contains (is a superset of) G (by (b.i));
- G∗ does not prove A (because the proof would contain only finitely many sentences and when the last of them is introduced in some Gn, that Gn would prove A contrary to the definition of Gn); and
- G∗ is a Maximal Set with respect to A: If any more sentences whatever were added to G∗, it would prove A. (Because if it were possible to add any more sentences, they should have been added when they were encountered during the construction of the Gn, again by definition)
- If G∗ is a Maximal Set with respect to A, then it is truth-like. This means that it contains C if and only if it does not contain ¬C; If it contains C and contains "If C then B" then it also contains B; and so forth. In order to show this, one has to show the axiomatic system is strong enough for the following:
- For any formulas C and D, if it proves both C and ¬C, then it proves D. From this it follows, that a Maximal Set with respect to A cannot prove both C and ¬C, as otherwise it would prove A.
- For any formulas C and D, if it proves both C→D and ¬C→D, then it proves D. This is used, together with the deduction theorem, to show that for any formula, either it or its negation is in G∗: Let B be a formula not in G∗; then G∗ with the addition of B proves A. Thus from the deduction theorem it follows that G∗ proves B→A. But suppose ¬B were also not in G∗, then by the same logic G∗ also proves ¬B→A; but then G∗ proves A, which we have already shown to be false.
- For any formulas C and D, if it proves C and D, then it proves C→D.
- For any formulas C and D, if it proves C and ¬D, then it proves ¬(C→D).
- For any formulas C and D, if it proves ¬C, then it proves C→D.
- If G∗ is truth-like there is a G∗-Canonical valuation of the language: one that makes every sentence in G∗ true and everything outside G∗ false while still obeying the laws of semantic composition in the language. Note that the requirement that it is truth-like is needed to guarantee that the laws of semantic composition in the language will be satisfied by this truth assignment.
- A G∗-canonical valuation will make our original set G all true, and make A false.
- If there is a valuation on which G are true and A is false, then G does not (semantically) imply A.
Thus every system that has modus ponens as an inference rule, and proves the following theorems (including substitutions thereof) is complete:
The first five are used for the satisfaction of the five conditions in stage III above, and the last three for proving the deduction theorem.
Example
As an example, it can be shown that as any other tautology, the three axioms of the classical propositional calculus system described earlier can be proven in any system that satisfies the above, namely that has modus ponens as an inference rule, and proves the above eight theorems (including substitutions thereof). Out of the eight theorems, the last two are two of the three axioms; the third axiom, , can be proven as well, as we now show.
For the proof we may use the hypothetical syllogism theorem (in the form relevant for this axiomatic system), since it only relies on the two axioms that are already in the above set of eight theorems. The proof then is as follows:
- (instance of the 7th theorem)
- (instance of the 7th theorem)
- (from (1) and (2) by modus ponens)
- (instance of the hypothetical syllogism theorem)
- (instance of the 5th theorem)
- (from (5) and (4) by modus ponens)
- (instance of the 2nd theorem)
- (instance of the 7th theorem)
- (from (7) and (8) by modus ponens)
-
- (instance of the 8th theorem)
- (from (9) and (10) by modus ponens)
- (from (3) and (11) by modus ponens)
- (instance of the 8th theorem)
- (from (12) and (13) by modus ponens)
- (from (6) and (14) by modus ponens)
Verifying completeness for the classical propositional calculus system
We now verify that the classical propositional calculus system described earlier can indeed prove the required eight theorems mentioned above. We use several lemmas proven here:
- (DN1) - Double negation (one direction)
- (DN2) - Double negation (another direction)
- (HS1) - one form of Hypothetical syllogism
- (HS2) - another form of Hypothetical syllogism
- (TR1) - Transposition
- (TR2) - another form of transposition.
- (L1)
- (L3)
We also use the method of the hypothetical syllogism metatheorem as a shorthand for several proof steps.
- - proof:
- (instance of (A1))
- (instance of (TR1))
- (from (1) and (2) using the hypothetical syllogism metatheorem)
- (instance of (DN1))
- (instance of (HS1))
- (from (4) and (5) using modus ponens)
- (from (3) and (6) using the hypothetical syllogism metatheorem)
- - proof:
- (instance of (HS1))
- (instance of (L3))
- (instance of (HS1))
- (from (2) and (3) by modus ponens)
- (from (1) and (4) using the hypothetical syllogism metatheorem)
- (instance of (TR2))
- (instance of (HS2))
- (from (6) and (7) using modus ponens)
- (from (5) and (8) using the hypothetical syllogism metatheorem)
- - proof:
- (instance of (A1))
- (instance of (A1))
- (from (1) and (2) using modus ponens)
- - proof:
- (instance of (L1))
- (instance of (TR1))
- (from (1) and (2) using the hypothetical syllogism metatheorem)
- - proof:
- (instance of (A1))
- (instance of (A3))
- (from (1) and (2) using the hypothetical syllogism metatheorem)
- - proof given in the proof example above
- - axiom (A1)
- - axiom (A2)
Another outline for a completeness proof
If a formula is a tautology, then there is a truth table for it which shows that each valuation yields the value true for the formula. Consider such a valuation. By mathematical induction on the length of the subformulas, show that the truth or falsity of the subformula follows from the truth or falsity (as appropriate for the valuation) of each propositional variable in the subformula. Then combine the lines of the truth table together two at a time by using "(P is true implies S) implies ((P is false implies S) implies S)". Keep repeating this until all dependencies on propositional variables have been eliminated. The result is that we have proved the given tautology. Since every tautology is provable, the logic is complete.
Interpretation of a truth-functional propositional calculus
An interpretation of a truth-functional propositional calculus is an assignment to each propositional symbol of of one or the other (but not both) of the truth values truth (T) and falsity (F), and an assignment to the connective symbols of of their usual truth-functional meanings. An interpretation of a truth-functional propositional calculus may also be expressed in terms of truth tables.[13]
For distinct propositional symbols there are distinct possible interpretations. For any particular symbol , for example, there are possible interpretations:
- is assigned T, or
- is assigned F.
For the pair , there are possible interpretations:
- both are assigned T,
- both are assigned F,
- is assigned T and is assigned F, or
- is assigned F and is assigned T.[13]
Since has , that is, denumerably many propositional symbols, there are , and therefore uncountably many distinct possible interpretations of .[13]
Interpretation of a sentence of truth-functional propositional logic
If φ and ψ are formulas of and is an interpretation of then the following definitions apply:
- A sentence of propositional logic is true under an interpretation if assigns the truth value T to that sentence. If a sentence is true under an interpretation, then that interpretation is called a model of that sentence.
- φ is false under an interpretation if φ is not true under .[13]
- A sentence of propositional logic is logically valid if it is true under every interpretation.
- φ means that φ is logically valid.
- A sentence ψ of propositional logic is a semantic consequence of a sentence φ if there is no interpretation under which φ is true and ψ is false.
- A sentence of propositional logic is consistent if it is true under at least one interpretation. It is inconsistent if it is not consistent.
Some consequences of these definitions:
- For any given interpretation a given formula is either true or false.[13]
- No formula is both true and false under the same interpretation.[13]
- φ is false for a given interpretation iff is true for that interpretation; and φ is true under an interpretation iff is false under that interpretation.[13]
- If φ and are both true under a given interpretation, then ψ is true under that interpretation.[13]
- If and , then .[13]
- is true under iff φ is not true under .
- is true under iff either φ is not true under or ψ is true under .[13]
- A sentence ψ of propositional logic is a semantic consequence of a sentence φ iff is logically valid, that is, iff .[13]
Alternative calculus
It is possible to define another version of propositional calculus, which defines most of the syntax of the logical operators by means of axioms, and which uses only one inference rule.
Axioms
Let φ, χ, and ψ stand for well-formed formulas. (The well-formed formulas themselves would not contain any Greek letters, but only capital Roman letters, connective operators, and parentheses.) Then the axioms are as follows:
Name | Axiom Schema | Description |
---|---|---|
THEN-1 | Add hypothesis χ, implication introduction | |
THEN-2 | Distribute hypothesis over implication | |
AND-1 | Eliminate conjunction | |
AND-2 | ||
AND-3 | Introduce conjunction | |
OR-1 | Introduce disjunction | |
OR-2 | ||
OR-3 | Eliminate disjunction | |
NOT-1 | Introduce negation | |
NOT-2 | Eliminate negation | |
NOT-3 | Excluded middle, classical logic | |
IFF-1 | Eliminate equivalence | |
IFF-2 | ||
IFF-3 | Introduce equivalence |
- Axiom THEN-2 may be considered to be a "distributive property of implication with respect to implication."
- Axioms AND-1 and AND-2 correspond to "conjunction elimination". The relation between AND-1 and AND-2 reflects the commutativity of the conjunction operator.
- Axiom AND-3 corresponds to "conjunction introduction."
- Axioms OR-1 and OR-2 correspond to "disjunction introduction." The relation between OR-1 and OR-2 reflects the commutativity of the disjunction operator.
- Axiom NOT-1 corresponds to "reductio ad absurdum."
- Axiom NOT-2 says that "anything can be deduced from a contradiction."
- Axiom NOT-3 is called "tertium non-datur" (Latin: "a third is not given") and reflects the semantic valuation of propositional formulas: a formula can have a truth-value of either true or false. There is no third truth-value, at least not in classical logic. Intuitionistic logicians do not accept the axiom NOT-3.
Inference rule
The inference rule is modus ponens:
- .
Meta-inference rule
Let a demonstration be represented by a sequence, with hypotheses to the left of the turnstile and the conclusion to the right of the turnstile. Then the deduction theorem can be stated as follows:
- If the sequence
- has been demonstrated, then it is also possible to demonstrate the sequence
- .
This deduction theorem (DT) is not itself formulated with propositional calculus: it is not a theorem of propositional calculus, but a theorem about propositional calculus. In this sense, it is a meta-theorem, comparable to theorems about the soundness or completeness of propositional calculus.
On the other hand, DT is so useful for simplifying the syntactical proof process that it can be considered and used as another inference rule, accompanying modus ponens. In this sense, DT corresponds to the natural conditional proof inference rule which is part of the first version of propositional calculus introduced in this article.
The converse of DT is also valid:
- If the sequence
- has been demonstrated, then it is also possible to demonstrate the sequence
in fact, the validity of the converse of DT is almost trivial compared to that of DT:
- If
- then
- 1:
- 2:
- and from (1) and (2) can be deduced
- 3:
- by means of modus ponens, Q.E.D.
The converse of DT has powerful implications: it can be used to convert an axiom into an inference rule. For example, by axiom AND-1 we have,
which can be transformed by means of the converse of the deduction theorem into
which tells us that the inference rule
is admissible. This inference rule is conjunction elimination, one of the ten inference rules used in the first version (in this article) of the propositional calculus.
Example of a proof
The following is an example of a (syntactical) demonstration, involving only axioms THEN-1 and THEN-2:
Prove: (Reflexivity of implication).
Proof:
-
- Axiom THEN-2 with
-
- Axiom THEN-1 with
-
- From (1) and (2) by modus ponens.
-
- Axiom THEN-1 with
-
- From (3) and (4) by modus ponens.
Equivalence to equational logics
The preceding alternative calculus is an example of a Hilbert-style deduction system. In the case of propositional systems the axioms are terms built with logical connectives and the only inference rule is modus ponens. Equational logic as standardly used informally in high school algebra is a different kind of calculus from Hilbert systems. Its theorems are equations and its inference rules express the properties of equality, namely that it is a congruence on terms that admits substitution.
Classical propositional calculus as described above is equivalent to Boolean algebra, while intuitionistic propositional calculus is equivalent to Heyting algebra. The equivalence is shown by translation in each direction of the theorems of the respective systems. Theorems of classical or intuitionistic propositional calculus are translated as equations of Boolean or Heyting algebra respectively. Conversely theorems of Boolean or Heyting algebra are translated as theorems of classical or intuitionistic calculus respectively, for which is a standard abbreviation. In the case of Boolean algebra can also be translated as , but this translation is incorrect intuitionistically.
In both Boolean and Heyting algebra, inequality can be used in place of equality. The equality is expressible as a pair of inequalities and . Conversely the inequality is expressible as the equality , or as . The significance of inequality for Hilbert-style systems is that it corresponds to the latter's deduction or entailment symbol . An entailment
is translated in the inequality version of the algebraic framework as
Conversely the algebraic inequality is translated as the entailment
- .
The difference between implication and inequality or entailment or is that the former is internal to the logic while the latter is external. Internal implication between two terms is another term of the same kind. Entailment as external implication between two terms expresses a metatruth outside the language of the logic, and is considered part of the metalanguage. Even when the logic under study is intuitionistic, entailment is ordinarily understood classically as two-valued: either the left side entails, or is less-or-equal to, the right side, or it is not.
Similar but more complex translations to and from algebraic logics are possible for natural deduction systems as described above and for the sequent calculus. The entailments of the latter can be interpreted as two-valued, but a more insightful interpretation is as a set, the elements of which can be understood as abstract proofs organized as the morphisms of a category. In this interpretation the cut rule of the sequent calculus corresponds to composition in the category. Boolean and Heyting algebras enter this picture as special categories having at most one morphism per homset, i.e., one proof per entailment, corresponding to the idea that existence of proofs is all that matters: any proof will do and there is no point in distinguishing them.
Graphical calculi
It is possible to generalize the definition of a formal language from a set of finite sequences over a finite basis to include many other sets of mathematical structures, so long as they are built up by finitary means from finite materials. What's more, many of these families of formal structures are especially well-suited for use in logic.
For example, there are many families of graphs that are close enough analogues of formal languages that the concept of a calculus is quite easily and naturally extended to them. Many species of graphs arise as parse graphs in the syntactic analysis of the corresponding families of text structures. The exigencies of practical computation on formal languages frequently demand that text strings be converted into pointer structure renditions of parse graphs, simply as a matter of checking whether strings are well-formed formulas or not. Once this is done, there are many advantages to be gained from developing the graphical analogue of the calculus on strings. The mapping from strings to parse graphs is called parsing and the inverse mapping from parse graphs to strings is achieved by an operation that is called traversing the graph.
Other logical calculi
Propositional calculus is about the simplest kind of logical calculus in current use. It can be extended in several ways. (Aristotelian "syllogistic" calculus, which is largely supplanted in modern logic, is in some ways simpler – but in other ways more complex – than propositional calculus.) The most immediate way to develop a more complex logical calculus is to introduce rules that are sensitive to more fine-grained details of the sentences being used.
First-order logic (a.k.a. first-order predicate logic) results when the "atomic sentences" of propositional logic are broken up into terms, variables, predicates, and quantifiers, all keeping the rules of propositional logic with some new ones introduced. (For example, from "All dogs are mammals" we may infer "If Rover is a dog then Rover is a mammal".) With the tools of first-order logic it is possible to formulate a number of theories, either with explicit axioms or by rules of inference, that can themselves be treated as logical calculi. Arithmetic is the best known of these; others include set theory and mereology. Second-order logic and other higher-order logics are formal extensions of first-order logic. Thus, it makes sense to refer to propositional logic as "zeroth-order logic", when comparing it with these logics.
Modal logic also offers a variety of inferences that cannot be captured in propositional calculus. For example, from "Necessarily p" we may infer that p. From p we may infer "It is possible that p". The translation between modal logics and algebraic logics concerns classical and intuitionistic logics but with the introduction of a unary operator on Boolean or Heyting algebras, different from the Boolean operations, interpreting the possibility modality, and in the case of Heyting algebra a second operator interpreting necessity (for Boolean algebra this is redundant since necessity is the De Morgan dual of possibility). The first operator preserves 0 and disjunction while the second preserves 1 and conjunction.
Many-valued logics are those allowing sentences to have values other than true and false. (For example, neither and both are standard "extra values"; "continuum logic" allows each sentence to have any of an infinite number of "degrees of truth" between true and false.) These logics often require calculational devices quite distinct from propositional calculus. When the values form a Boolean algebra (which may have more than two or even infinitely many values), many-valued logic reduces to classical logic; many-valued logics are therefore only of independent interest when the values form an algebra that is not Boolean.
Solvers
One notable difference between propositional calculus and predicate calculus is that satisfiability of a propositional formula is decidable.[14] Deciding satisfiability of propositional logic formulas is an NP-complete problem. However, practical methods exist (e.g., DPLL algorithm, 1962; Chaff algorithm, 2001) that are very fast for many useful cases. Recent work has extended the SAT solver algorithms to work with propositions containing arithmetic expressions; these are the SMT solvers.
See also
Higher logical levels
Related topics
- Boolean algebra (logic)
- Boolean algebra (structure)
- Boolean algebra topics
- Boolean domain
- Boolean function
- Boolean-valued function
- Categorical logic
- Combinational logic
- Combinatory logic
- Conceptual graph
- Disjunctive syllogism
- Entitative graph
- Equational logic
- Existential graph
- Frege's propositional calculus
- Implicational propositional calculus
- Intuitionistic propositional calculus
- Jean Buridan
- Laws of Form
- List of logic symbols
- Logical graph
- Logical NOR
- Logical value
- Mathematical logic
- Operation (mathematics)
- Paul of Venice
- Peirce's law
- Peter of Spain (author)
- Propositional formula
- Symmetric difference
- Tautology (rule of inference)
- Truth function
- Truth table
- Walter Burley
- William of Sherwood
References
- W. V. O. Quine, Mathematical Logic (1980), p.81. Harvard University Press, 0-674-55451-5
Further reading
- Brown, Frank Markham (2003), Boolean Reasoning: The Logic of Boolean Equations, 1st edition, Kluwer Academic Publishers, Norwell, MA. 2nd edition, Dover Publications, Mineola, NY.
- Chang, C.C. and Keisler, H.J. (1973), Model Theory, North-Holland, Amsterdam, Netherlands.
- Kohavi, Zvi (1978), Switching and Finite Automata Theory, 1st edition, McGraw–Hill, 1970. 2nd edition, McGraw–Hill, 1978.
- Korfhage, Robert R. (1974), Discrete Computational Structures, Academic Press, New York, NY.
- Lambek, J. and Scott, P.J. (1986), Introduction to Higher Order Categorical Logic, Cambridge University Press, Cambridge, UK.
- Mendelson, Elliot (1964), Introduction to Mathematical Logic, D. Van Nostrand Company.
Related works
- Hofstadter, Douglas (1979). Gödel, Escher, Bach: An Eternal Golden Braid. Basic Books. ISBN 978-0-465-02656-2.
External links
- Klement, Kevin C. (2006), "Propositional Logic", in James Fieser and Bradley Dowden (eds.), Internet Encyclopedia of Philosophy, Eprint.
- Formal Predicate Calculus, contains a systematic formal development along the lines of Alternative calculus
- forall x: an introduction to formal logic, by P.D. Magnus, covers formal semantics and proof theory for sentential logic.
- Chapter 2 / Propositional Logic from Logic In Action
- Propositional sequent calculus prover on Project Nayuki. (note: implication can be input in the form
!X|Y
, and a sequent can be a single formula prefixed with>
and having no commas) - Propositional Logic - A Generative Grammar
https://en.wikipedia.org/wiki/Propositional_calculus
First-order logic—also known as predicate logic, quantificational logic, and first-order predicate calculus—is a collection of formal systems used in mathematics, philosophy, linguistics, and computer science. First-order logic uses quantified variables over non-logical objects, and allows the use of sentences that contain variables, so that rather than propositions such as "Socrates is a man", one can have expressions in the form "there exists x such that x is Socrates and x is a man", where "there exists" is a quantifier, while x is a variable.[1] This distinguishes it from propositional logic, which does not use quantifiers or relations;[2] in this sense, propositional logic is the foundation of first-order logic.
A theory about a topic, such as set theory, a theory for groups,[3] or a formal theory of arithmetic, is usually a first-order logic together with a specified domain of discourse (over which the quantified variables range), finitely many functions from that domain to itself, finitely many predicates defined on that domain, and a set of axioms believed to hold about them. Sometimes, "theory" is understood in a more formal sense as just a set of sentences in first-order logic.
The adjective "first-order" distinguishes first-order logic from higher-order logic, in which there are predicates having predicates or functions as arguments, or in which quantification over predicates or functions, or both, are permitted.[4]: 56 In first-order theories, predicates are often associated with sets. In interpreted higher-order theories, predicates may be interpreted as sets of sets.
There are many deductive systems for first-order logic which are both sound (i.e., all provable statements are true in all models) and complete (i.e. all statements which are true in all models are provable). Although the logical consequence relation is only semidecidable, much progress has been made in automated theorem proving in first-order logic. First-order logic also satisfies several metalogical theorems that make it amenable to analysis in proof theory, such as the Löwenheim–Skolem theorem and the compactness theorem.
First-order logic is the standard for the formalization of mathematics into axioms, and is studied in the foundations of mathematics. Peano arithmetic and Zermelo–Fraenkel set theory are axiomatizations of number theory and set theory, respectively, into first-order logic. No first-order theory, however, has the strength to uniquely describe a structure with an infinite domain, such as the natural numbers or the real line. Axiom systems that do fully describe these two structures (that is, categorical axiom systems) can be obtained in stronger logics such as second-order logic.
The foundations of first-order logic were developed independently by Gottlob Frege and Charles Sanders Peirce.[5] For a history of first-order logic and how it came to dominate formal logic, see José Ferreirós (2001).
Introduction
While propositional logic deals with simple declarative propositions, first-order logic additionally covers predicates and quantification.
A predicate takes an entity or entities in the domain of discourse and evaluates to true or false. Consider the two sentences "Socrates is a philosopher" and "Plato is a philosopher". In propositional logic, these sentences are viewed as being unrelated, and might be denoted, for example, by variables such as p and q. The predicate "is a philosopher" occurs in both sentences, which have a common structure of "a is a philosopher". The variable a is instantiated as "Socrates" in the first sentence, and is instantiated as "Plato" in the second sentence. While first-order logic allows for the use of predicates, such as "is a philosopher" in this example, propositional logic does not.[6]
Relationships between predicates can be stated using logical connectives. Consider, for example, the first-order formula "if a is a philosopher, then a is a scholar". This formula is a conditional statement with "a is a philosopher" as its hypothesis, and "a is a scholar" as its conclusion. The truth of this formula depends on which object is denoted by a, and on the interpretations of the predicates "is a philosopher" and "is a scholar".
Quantifiers can be applied to variables in a formula. The variable a in the previous formula can be universally quantified, for instance, with the first-order sentence "For every a, if a is a philosopher, then a is a scholar". The universal quantifier "for every" in this sentence expresses the idea that the claim "if a is a philosopher, then a is a scholar" holds for all choices of a.
The negation of the sentence "For every a, if a is a philosopher, then a is a scholar" is logically equivalent to the sentence "There exists a such that a is a philosopher and a is not a scholar". The existential quantifier "there exists" expresses the idea that the claim "a is a philosopher and a is not a scholar" holds for some choice of a.
The predicates "is a philosopher" and "is a scholar" each take a single variable. In general, predicates can take several variables. In the first-order sentence "Socrates is the teacher of Plato", the predicate "is the teacher of" takes two variables.
An interpretation (or model) of a first-order formula specifies what each predicate means, and the entities that can instantiate the variables. These entities form the domain of discourse or universe, which is usually required to be a nonempty set. For example, in an interpretation with the domain of discourse consisting of all human beings and the predicate "is a philosopher" understood as "was the author of the Republic", the sentence "There exists a such that a is a philosopher" is seen as being true, as witnessed by Plato.[clarification needed]
There are two key parts of first-order logic. The syntax determines which finite sequences of symbols are well-formed expressions in first-order logic, while the semantics determines the meanings behind these expressions.
Syntax
Alphabet
Unlike natural languages, such as English, the language of first-order logic is completely formal, so that it can be mechanically determined whether a given expression is well formed. There are two key types of well-formed expressions: terms, which intuitively represent objects, and formulas, which intuitively express statements that can be true or false. The terms and formulas of first-order logic are strings of symbols, where all the symbols together form the alphabet of the language. As with all formal languages, the nature of the symbols themselves is outside the scope of formal logic; they are often regarded simply as letters and punctuation symbols.
It is common to divide the symbols of the alphabet into logical symbols, which always have the same meaning, and non-logical symbols, whose meaning varies by interpretation.[citation needed] For example, the logical symbol always represents "and"; it is never interpreted as "or", which is represented by the logical symbol . However, a non-logical predicate symbol such as Phil(x) could be interpreted to mean "x is a philosopher", "x is a man named Philip", or any other unary predicate depending on the interpretation at hand.
Logical symbols
Logical symbols are a set of characters that vary by author, but usually include the following:[7]
- Quantifier symbols: ∀ for universal quantification, and ∃ for existential quantification
- Logical connectives: ∧ for conjunction, ∨ for disjunction, → for implication, ↔ for biconditional, ¬ for negation. Some authors[8] use Cpq instead of → and Epq instead of ↔, especially in contexts where → is used for other purposes. Moreover, the horseshoe ⊃ may replace →; the triple-bar ≡ may replace ↔; a tilde (~), Np, or Fp may replace ¬; a double bar , , ,[9] or Apq may replace ∨; and an ampersand &, Kpq, or the middle dot ⋅ may replace ∧, especially if these symbols are not available for technical reasons. (The aforementioned symbols Cpq, Epq, Np, Apq, and Kpq are used in Polish notation.)
- Parentheses, brackets, and other punctuation symbols. The choice of such symbols varies depending on context.
- An infinite set of variables, often denoted by lowercase letters at the end of the alphabet x, y, z, ... . Subscripts are often used to distinguish variables: x0, x1, x2, ... .
- An equality symbol (sometimes, identity symbol) = (see § Equality and its axioms below).
Not all of these symbols are required in first-order logic. Either one of the quantifiers along with negation, conjunction (or disjunction), variables, brackets, and equality suffices.
Other logical symbols include the following:
- Truth constants: T, V, or ⊤ for "true" and F, O, or ⊥ for "false" (V and O are from Polish notation). Without any such logical operators of valence 0, these two constants can only be expressed using quantifiers.
- Additional logical connectives such as the Sheffer stroke, Dpq (NAND), and exclusive or, Jpq.
Non-logical symbols
Non-logical symbols represent predicates (relations), functions and constants. It used to be standard practice to use a fixed, infinite set of non-logical symbols for all purposes:
- For every integer n ≥ 0, there is a collection of n-ary, or n-place, predicate symbols. Because they represent relations between n elements, they are also called relation symbols. For each arity n, there is an infinite supply of them:
- Pn0, Pn1, Pn2, Pn3, ...
- For every integer n ≥ 0, there are infinitely many n-ary function symbols:
- f n0, f n1, f n2, f n3, ...
When the arity of a predicate symbol or function symbol is clear from context, the superscript n is often omitted.
In this traditional approach, there is only one language of first-order logic.[10] This approach is still common, especially in philosophically oriented books.
A more recent practice is to use different non-logical symbols according to the application one has in mind. Therefore, it has become necessary to name the set of all non-logical symbols used in a particular application. This choice is made via a signature.[11]
Typical signatures in mathematics are {1, ×} or just {×} for groups,[3] or {0, 1, +, ×, <} for ordered fields. There are no restrictions on the number of non-logical symbols. The signature can be empty, finite, or infinite, even uncountable. Uncountable signatures occur for example in modern proofs of the Löwenheim–Skolem theorem.
Though signatures might in some cases imply how non-logical symbols are to be interpreted, interpretation of the non-logical symbols in the signature is separate (and not necessarily fixed). Signatures concern syntax rather than semantics.
In this approach, every non-logical symbol is of one of the following types:
- A predicate symbol (or relation symbol) with some valence (or arity, number of arguments) greater than or equal to 0. These are often denoted by uppercase letters such as P, Q and R. Examples:
- In P(x), P is a predicate symbol of valence 1. One possible interpretation is "x is a man".
- In Q(x,y), Q is a predicate symbol of valence 2. Possible interpretations include "x is greater than y" and "x is the father of y".
- Relations of valence 0 can be identified with propositional variables, which can stand for any statement. One possible interpretation of R is "Socrates is a man".
- A function symbol, with some valence greater than or equal to 0. These are often denoted by lowercase roman letters such as f, g and h. Examples:
- f(x) may be interpreted as "the father of x". In arithmetic, it may stand for "-x". In set theory, it may stand for "the power set of x".
- In arithmetic, g(x,y) may stand for "x+y". In set theory, it may stand for "the union of x and y".
- Function symbols of valence 0 are called constant symbols, and are often denoted by lowercase letters at the beginning of the alphabet such as a, b and c. The symbol a may stand for Socrates. In arithmetic, it may stand for 0. In set theory, it may stand for the empty set.
The traditional approach can be recovered in the modern approach, by simply specifying the "custom" signature to consist of the traditional sequences of non-logical symbols.
Formation rules
BNF grammar |
---|
The formation rules define the terms and formulas of first-order logic.[13] When terms and formulas are represented as strings of symbols, these rules can be used to write a formal grammar for terms and formulas. These rules are generally context-free (each production has a single symbol on the left side), except that the set of symbols may be allowed to be infinite and there may be many start symbols, for example the variables in the case of terms.
Terms
The set of terms is inductively defined by the following rules:[14]
- Variables. Any variable symbol is a term.
- Functions. If f is an n-ary function symbol, and t1, ..., tn are terms, then f(t1,...,tn) is a term. In particular, symbols denoting individual constants are nullary function symbols, and thus are terms.
Only expressions which can be obtained by finitely many applications of rules 1 and 2 are terms. For example, no expression involving a predicate symbol is a term.
Formulas
The set of formulas (also called well-formed formulas[15] or WFFs) is inductively defined by the following rules:
- Predicate symbols. If P is an n-ary predicate symbol and t1, ..., tn are terms then P(t1,...,tn) is a formula.
- Equality. If the equality symbol is considered part of logic, and t1 and t2 are terms, then t1 = t2 is a formula.
- Negation. If is a formula, then is a formula.
- Binary connectives. If and are formulas, then () is a formula. Similar rules apply to other binary logical connectives.
- Quantifiers. If is a formula and x is a variable, then (for all x, holds) and (there exists x such that ) are formulas.
Only expressions which can be obtained by finitely many applications of rules 1–5 are formulas. The formulas obtained from the first two rules are said to be atomic formulas.
For example,
is a formula, if f is a unary function symbol, P a unary predicate symbol, and Q a ternary predicate symbol. However, is not a formula, although it is a string of symbols from the alphabet.
The role of the parentheses in the definition is to ensure that any formula can only be obtained in one way—by following the inductive definition (i.e., there is a unique parse tree for each formula). This property is known as unique readability of formulas. There are many conventions for where parentheses are used in formulas. For example, some authors use colons or full stops instead of parentheses, or change the places in which parentheses are inserted. Each author's particular definition must be accompanied by a proof of unique readability.
This definition of a formula does not support defining an if-then-else function ite(c, a, b)
,
where "c" is a condition expressed as a formula, that would return "a"
if c is true, and "b" if it is false. This is because both predicates
and functions can only accept terms as parameters, but the first
parameter is a formula. Some languages built on first-order logic, such
as SMT-LIB 2.0, add this.[16]
Notational conventions
For convenience, conventions have been developed about the precedence of the logical operators, to avoid the need to write parentheses in some cases. These rules are similar to the order of operations in arithmetic. A common convention is:
- is evaluated first
- and are evaluated next
- Quantifiers are evaluated next
- is evaluated last.
Moreover, extra punctuation not required by the definition may be inserted—to make formulas easier to read. Thus the formula
might be written as
In some fields, it is common to use infix notation for binary relations and functions, instead of the prefix notation defined above. For example, in arithmetic, one typically writes "2 + 2 = 4" instead of "=(+(2,2),4)". It is common to regard formulas in infix notation as abbreviations for the corresponding formulas in prefix notation, cf. also term structure vs. representation.
The definitions above use infix notation for binary connectives such as . A less common convention is Polish notation, in which one writes , and so on in front of their arguments rather than between them. This convention is advantageous in that it allows all punctuation symbols to be discarded. As such, Polish notation is compact and elegant, but rarely used in practice because it is hard for humans to read. In Polish notation, the formula
becomes "∀x∀y→Pfx¬→ PxQfyxz".
Free and bound variables
In a formula, a variable may occur free or bound (or both). One formalization of this notion is due to Quine, first the concept of a variable occurrence is defined, then whether a variable occurrence is free or bound, then whether a variable symbol overall is free or bound. In order to distinguish different occurrences of the identical symbol x, each occurrence of a variable symbol x in a formula φ is identified with the initial substring of φ up to the point at which said instance of the symbol x appears.[17]p.297 Then, an occurrence of x is said to be bound if that occurrence of x lies within the scope of at least one of either or . Finally, x is bound in φ if all occurrences of x in φ are bound.[17]pp.142--143
Intuitively, a variable symbol is free in a formula if at no point is it quantified:[17]pp.142--143 in ∀y P(x, y), the sole occurrence of variable x is free while that of y is bound. The free and bound variable occurrences in a formula are defined inductively as follows.
- Atomic formulas
- If φ is an atomic formula, then x occurs free in φ if and only if x occurs in φ. Moreover, there are no bound variables in any atomic formula.
- Negation
- x occurs free in ¬φ if and only if x occurs free in φ. x occurs bound in ¬φ if and only if x occurs bound in φ
- Binary connectives
- x occurs free in (φ → ψ) if and only if x occurs free in either φ or ψ. x occurs bound in (φ → ψ) if and only if x occurs bound in either φ or ψ. The same rule applies to any other binary connective in place of →.
- Quantifiers
- x occurs free in ∀y φ, if and only if x occurs free in φ and x is a different symbol from y. Also, x occurs bound in ∀y φ, if and only if x is y or x occurs bound in φ. The same rule holds with ∃ in place of ∀.
For example, in ∀x ∀y (P(x) → Q(x,f(x),z)), x and y occur only bound,[18] z occurs only free, and w is neither because it does not occur in the formula.
Free and bound variables of a formula need not be disjoint sets: in the formula P(x) → ∀x Q(x), the first occurrence of x, as argument of P, is free while the second one, as argument of Q, is bound.
A formula in first-order logic with no free variable occurrences is called a first-order sentence. These are the formulas that will have well-defined truth values under an interpretation. For example, whether a formula such as Phil(x) is true must depend on what x represents. But the sentence ∃x Phil(x) will be either true or false in a given interpretation.
Example: ordered abelian groups
In mathematics, the language of ordered abelian groups has one constant symbol 0, one unary function symbol −, one binary function symbol +, and one binary relation symbol ≤. Then:
- The expressions +(x, y) and +(x, +(y, −(z))) are terms. These are usually written as x + y and x + y − z.
- The expressions +(x, y) = 0 and ≤(+(x, +(y, −(z))), +(x, y)) are atomic formulas. These are usually written as x + y = 0 and x + y − z ≤ x + y.
- The expression is a formula, which is usually written as This formula has one free variable, z.
The axioms for ordered abelian groups can be expressed as a set of sentences in the language. For example, the axiom stating that the group is commutative is usually written
Semantics
An interpretation of a first-order language assigns a denotation to each non-logical symbol (predicate symbol, function symbol, or constant symbol) in that language. It also determines a domain of discourse that specifies the range of the quantifiers. The result is that each term is assigned an object that it represents, each predicate is assigned a property of objects, and each sentence is assigned a truth value. In this way, an interpretation provides semantic meaning to the terms, predicates, and formulas of the language. The study of the interpretations of formal languages is called formal semantics. What follows is a description of the standard or Tarskian semantics for first-order logic. (It is also possible to define game semantics for first-order logic, but aside from requiring the axiom of choice, game semantics agree with Tarskian semantics for first-order logic, so game semantics will not be elaborated herein.)
First-order structures
The most common way of specifying an interpretation (especially in mathematics) is to specify a structure (also called a model; see below). The structure consists of a domain of discourse D and an interpretation function I mapping non-logical symbols to predicates, functions, and constants.
The domain of discourse D is a nonempty set of "objects" of some kind. Intuitively, given an interpretation, a first-order formula becomes a statement about these objects; for example, states the existence of some object in D for which the predicate P is true (or, more precisely, for which the predicate assigned to the predicate symbol P by the interpretation is true). For example, one can take D to be the set of integers.
Non-logical symbols are interpreted as follows:
- The interpretation of an n-ary function symbol is a function from Dn to D. For example, if the domain of discourse is the set of integers, a function symbol f of arity 2 can be interpreted as the function that gives the sum of its arguments. In other words, the symbol f is associated with the function which, in this interpretation, is addition.
- The interpretation of a constant symbol (a function symbol of arity 0) is a function from D0 (a set whose only member is the empty tuple) to D, which can be simply identified with an object in D. For example, an interpretation may assign the value to the constant symbol .
- The interpretation of an n-ary predicate symbol is a set of n-tuples of elements of D, giving the arguments for which the predicate is true. For example, an interpretation of a binary predicate symbol P may be the set of pairs of integers such that the first one is less than the second. According to this interpretation, the predicate P would be true if its first argument is less than its second argument. Equivalently, predicate symbols may be assigned boolean-valued functions from Dn to .
Evaluation of truth values
A formula evaluates to true or false given an interpretation and a variable assignment μ that associates an element of the domain of discourse with each variable. The reason that a variable assignment is required is to give meanings to formulas with free variables, such as . The truth value of this formula changes depending on whether x and y denote the same individual.
First, the variable assignment μ can be extended to all terms of the language, with the result that each term maps to a single element of the domain of discourse. The following rules are used to make this assignment:
- Variables. Each variable x evaluates to μ(x)
- Functions. Given terms that have been evaluated to elements of the domain of discourse, and a n-ary function symbol f, the term evaluates to .
Next, each formula is assigned a truth value. The inductive definition used to make this assignment is called the T-schema.
- Atomic formulas (1). A formula is associated the value true or false depending on whether , where are the evaluation of the terms and is the interpretation of , which by assumption is a subset of .
- Atomic formulas (2). A formula is assigned true if and evaluate to the same object of the domain of discourse (see the section on equality below).
- Logical connectives. A formula in the form , , etc. is evaluated according to the truth table for the connective in question, as in propositional logic.
- Existential quantifiers. A formula is true according to M and if there exists an evaluation of the variables that only differs from regarding the evaluation of x and such that φ is true according to the interpretation M and the variable assignment . This formal definition captures the idea that is true if and only if there is a way to choose a value for x such that φ(x) is satisfied.
- Universal quantifiers. A formula is true according to M and if φ(x) is true for every pair composed by the interpretation M and some variable assignment that differs from only on the value of x. This captures the idea that is true if every possible choice of a value for x causes φ(x) to be true.
If a formula does not contain free variables, and so is a sentence, then the initial variable assignment does not affect its truth value. In other words, a sentence is true according to M and if and only if it is true according to M and every other variable assignment .
There is a second common approach to defining truth values that does not rely on variable assignment functions. Instead, given an interpretation M, one first adds to the signature a collection of constant symbols, one for each element of the domain of discourse in M; say that for each d in the domain the constant symbol cd is fixed. The interpretation is extended so that each new constant symbol is assigned to its corresponding element of the domain. One now defines truth for quantified formulas syntactically, as follows:
- Existential quantifiers (alternate). A formula is true according to M if there is some d in the domain of discourse such that holds. Here is the result of substituting cd for every free occurrence of x in φ.
- Universal quantifiers (alternate). A formula is true according to M if, for every d in the domain of discourse, is true according to M.
This alternate approach gives exactly the same truth values to all sentences as the approach via variable assignments.
Validity, satisfiability, and logical consequence
If a sentence φ evaluates to true under a given interpretation M, one says that M satisfies φ; this is denoted[19] . A sentence is satisfiable if there is some interpretation under which it is true. This is a bit different from the symbol from model theory, where denotes satisfiability in a model, i.e. "there is a suitable assignment of values in 's domain to variable symbols of ".[20]
Satisfiability of formulas with free variables is more complicated, because an interpretation on its own does not determine the truth value of such a formula. The most common convention is that a formula φ with free variables , ..., is said to be satisfied by an interpretation if the formula φ remains true regardless which individuals from the domain of discourse are assigned to its free variables , ..., . This has the same effect as saying that a formula φ is satisfied if and only if its universal closure is satisfied.
A formula is logically valid (or simply valid) if it is true in every interpretation.[21] These formulas play a role similar to tautologies in propositional logic.
A formula φ is a logical consequence of a formula ψ if every interpretation that makes ψ true also makes φ true. In this case one says that φ is logically implied by ψ.
Algebraizations
An alternate approach to the semantics of first-order logic proceeds via abstract algebra. This approach generalizes the Lindenbaum–Tarski algebras of propositional logic. There are three ways of eliminating quantified variables from first-order logic that do not involve replacing quantifiers with other variable binding term operators:
- Cylindric algebra, by Alfred Tarski and colleagues;
- Polyadic algebra, by Paul Halmos;
- Predicate functor logic, mainly due to Willard Quine.
These algebras are all lattices that properly extend the two-element Boolean algebra.
Tarski and Givant (1987) showed that the fragment of first-order logic that has no atomic sentence lying in the scope of more than three quantifiers has the same expressive power as relation algebra.[22]: 32–33 This fragment is of great interest because it suffices for Peano arithmetic and most axiomatic set theory, including the canonical ZFC. They also prove that first-order logic with a primitive ordered pair is equivalent to a relation algebra with two ordered pair projection functions.[23]: 803
First-order theories, models, and elementary classes
A first-order theory of a particular signature is a set of axioms, which are sentences consisting of symbols from that signature. The set of axioms is often finite or recursively enumerable, in which case the theory is called effective. Some authors require theories to also include all logical consequences of the axioms. The axioms are considered to hold within the theory and from them other sentences that hold within the theory can be derived.
A first-order structure that satisfies all sentences in a given theory is said to be a model of the theory. An elementary class is the set of all structures satisfying a particular theory. These classes are a main subject of study in model theory.
Many theories have an intended interpretation, a certain model that is kept in mind when studying the theory. For example, the intended interpretation of Peano arithmetic consists of the usual natural numbers with their usual operations. However, the Löwenheim–Skolem theorem shows that most first-order theories will also have other, nonstandard models.
A theory is consistent if it is not possible to prove a contradiction from the axioms of the theory. A theory is complete if, for every formula in its signature, either that formula or its negation is a logical consequence of the axioms of the theory. Gödel's incompleteness theorem shows that effective first-order theories that include a sufficient portion of the theory of the natural numbers can never be both consistent and complete.
Empty domains
The definition above requires that the domain of discourse of any interpretation must be nonempty. There are settings, such as inclusive logic, where empty domains are permitted. Moreover, if a class of algebraic structures includes an empty structure (for example, there is an empty poset), that class can only be an elementary class in first-order logic if empty domains are permitted or the empty structure is removed from the class.
There are several difficulties with empty domains, however:
- Many common rules of inference are only valid when the domain of discourse is required to be nonempty. One example is the rule stating that implies when x is not a free variable in . This rule, which is used to put formulas into prenex normal form, is sound in nonempty domains, but unsound if the empty domain is permitted.
- The definition of truth in an interpretation that uses a variable assignment function cannot work with empty domains, because there are no variable assignment functions whose range is empty. (Similarly, one cannot assign interpretations to constant symbols.) This truth definition requires that one must select a variable assignment function (μ above) before truth values for even atomic formulas can be defined. Then the truth value of a sentence is defined to be its truth value under any variable assignment, and it is proved that this truth value does not depend on which assignment is chosen. This technique does not work if there are no assignment functions at all; it must be changed to accommodate empty domains.
Thus, when the empty domain is permitted, it must often be treated as a special case. Most authors, however, simply exclude the empty domain by definition.
Deductive systems
A deductive system is used to demonstrate, on a purely syntactic basis, that one formula is a logical consequence of another formula. There are many such systems for first-order logic, including Hilbert-style deductive systems, natural deduction, the sequent calculus, the tableaux method, and resolution. These share the common property that a deduction is a finite syntactic object; the format of this object, and the way it is constructed, vary widely. These finite deductions themselves are often called derivations in proof theory. They are also often called proofs, but are completely formalized unlike natural-language mathematical proofs.
A deductive system is sound if any formula that can be derived in the system is logically valid. Conversely, a deductive system is complete if every logically valid formula is derivable. All of the systems discussed in this article are both sound and complete. They also share the property that it is possible to effectively verify that a purportedly valid deduction is actually a deduction; such deduction systems are called effective.
A key property of deductive systems is that they are purely syntactic, so that derivations can be verified without considering any interpretation. Thus a sound argument is correct in every possible interpretation of the language, regardless of whether that interpretation is about mathematics, economics, or some other area.
In general, logical consequence in first-order logic is only semidecidable: if a sentence A logically implies a sentence B then this can be discovered (for example, by searching for a proof until one is found, using some effective, sound, complete proof system). However, if A does not logically imply B, this does not mean that A logically implies the negation of B. There is no effective procedure that, given formulas A and B, always correctly decides whether A logically implies B.
Rules of inference
A rule of inference states that, given a particular formula (or set of formulas) with a certain property as a hypothesis, another specific formula (or set of formulas) can be derived as a conclusion. The rule is sound (or truth-preserving) if it preserves validity in the sense that whenever any interpretation satisfies the hypothesis, that interpretation also satisfies the conclusion.
For example, one common rule of inference is the rule of substitution. If t is a term and φ is a formula possibly containing the variable x, then φ[t/x] is the result of replacing all free instances of x by t in φ. The substitution rule states that for any φ and any term t, one can conclude φ[t/x] from φ provided that no free variable of t becomes bound during the substitution process. (If some free variable of t becomes bound, then to substitute t for x it is first necessary to change the bound variables of φ to differ from the free variables of t.)
To see why the restriction on bound variables is necessary, consider the logically valid formula φ given by , in the signature of (0,1,+,×,=) of arithmetic. If t is the term "x + 1", the formula φ[t/y] is , which will be false in many interpretations. The problem is that the free variable x of t became bound during the substitution. The intended replacement can be obtained by renaming the bound variable x of φ to something else, say z, so that the formula after substitution is , which is again logically valid.
The substitution rule demonstrates several common aspects of rules of inference. It is entirely syntactical; one can tell whether it was correctly applied without appeal to any interpretation. It has (syntactically defined) limitations on when it can be applied, which must be respected to preserve the correctness of derivations. Moreover, as is often the case, these limitations are necessary because of interactions between free and bound variables that occur during syntactic manipulations of the formulas involved in the inference rule.
Hilbert-style systems and natural deduction
A deduction in a Hilbert-style deductive system is a list of formulas, each of which is a logical axiom, a hypothesis that has been assumed for the derivation at hand, or follows from previous formulas via a rule of inference. The logical axioms consist of several axiom schemas of logically valid formulas; these encompass a significant amount of propositional logic. The rules of inference enable the manipulation of quantifiers. Typical Hilbert-style systems have a small number of rules of inference, along with several infinite schemas of logical axioms. It is common to have only modus ponens and universal generalization as rules of inference.
Natural deduction systems resemble Hilbert-style systems in that a deduction is a finite list of formulas. However, natural deduction systems have no logical axioms; they compensate by adding additional rules of inference that can be used to manipulate the logical connectives in formulas in the proof.
Sequent calculus
The sequent calculus was developed to study the properties of natural deduction systems.[24] Instead of working with one formula at a time, it uses sequents, which are expressions of the form
where A1, ..., An, B1, ..., Bk are formulas and the turnstile symbol is used as punctuation to separate the two halves. Intuitively, a sequent expresses the idea that implies .
Tableaux method
Unlike the methods just described, the derivations in the tableaux method are not lists of formulas. Instead, a derivation is a tree of formulas. To show that a formula A is provable, the tableaux method attempts to demonstrate that the negation of A is unsatisfiable. The tree of the derivation has at its root; the tree branches in a way that reflects the structure of the formula. For example, to show that is unsatisfiable requires showing that C and D are each unsatisfiable; this corresponds to a branching point in the tree with parent and children C and D.
Resolution
The resolution rule is a single rule of inference that, together with unification, is sound and complete for first-order logic. As with the tableaux method, a formula is proved by showing that the negation of the formula is unsatisfiable. Resolution is commonly used in automated theorem proving.
The resolution method works only with formulas that are disjunctions of atomic formulas; arbitrary formulas must first be converted to this form through Skolemization. The resolution rule states that from the hypotheses and , the conclusion can be obtained.
Provable identities
Many identities can be proved, which establish equivalences between particular formulas. These identities allow for rearranging formulas by moving quantifiers across other connectives, and are useful for putting formulas in prenex normal form. Some provable identities include:
- (where must not occur free in )
- (where must not occur free in )
Equality and its axioms
There are several different conventions for using equality (or identity) in first-order logic. The most common convention, known as first-order logic with equality, includes the equality symbol as a primitive logical symbol which is always interpreted as the real equality relation between members of the domain of discourse, such that the "two" given members are the same member. This approach also adds certain axioms about equality to the deductive system employed. These equality axioms are:[25]: 198–200
- Reflexivity. For each variable x, x = x.
- Substitution for functions. For all variables x and y, and any function symbol f,
- x = y → f(..., x, ...) = f(..., y, ...).
- Substitution for formulas. For any variables x and y and any formula φ(x), if φ' is obtained by replacing any number of free occurrences of x in φ with y, such that these remain free occurrences of y, then
- x = y → (φ → φ').
These are axiom schemas, each of which specifies an infinite set of axioms. The third schema is known as Leibniz's law, "the principle of substitutivity", "the indiscernibility of identicals", or "the replacement property". The second schema, involving the function symbol f, is (equivalent to) a special case of the third schema, using the formula
- x = y → (f(..., x, ...) = z → f(..., y, ...) = z).
Many other properties of equality are consequences of the axioms above, for example:
First-order logic without equality
An alternate approach considers the equality relation to be a non-logical symbol. This convention is known as first-order logic without equality. If an equality relation is included in the signature, the axioms of equality must now be added to the theories under consideration, if desired, instead of being considered rules of logic. The main difference between this method and first-order logic with equality is that an interpretation may now interpret two distinct individuals as "equal" (although, by Leibniz's law, these will satisfy exactly the same formulas under any interpretation). That is, the equality relation may now be interpreted by an arbitrary equivalence relation on the domain of discourse that is congruent with respect to the functions and relations of the interpretation.
When this second convention is followed, the term normal model is used to refer to an interpretation where no distinct individuals a and b satisfy a = b. In first-order logic with equality, only normal models are considered, and so there is no term for a model other than a normal model. When first-order logic without equality is studied, it is necessary to amend the statements of results such as the Löwenheim–Skolem theorem so that only normal models are considered.
First-order logic without equality is often employed in the context of second-order arithmetic and other higher-order theories of arithmetic, where the equality relation between sets of natural numbers is usually omitted.
Defining equality within a theory
If a theory has a binary formula A(x,y) which satisfies reflexivity and Leibniz's law, the theory is said to have equality, or to be a theory with equality. The theory may not have all instances of the above schemas as axioms, but rather as derivable theorems. For example, in theories with no function symbols and a finite number of relations, it is possible to define equality in terms of the relations, by defining the two terms s and t to be equal if any relation is unchanged by changing s to t in any argument.
Some theories allow other ad hoc definitions of equality:
- In the theory of partial orders with one relation symbol ≤, one could define s = t to be an abbreviation for s ≤ t ∧ t ≤ s.
- In set theory with one relation ∈, one may define s = t to be an abbreviation for ∀x (s ∈ x ↔ t ∈ x) ∧ ∀x (x ∈ s ↔ x ∈ t). This definition of equality then automatically satisfies the axioms for equality. In this case, one should replace the usual axiom of extensionality, which can be stated as , with an alternative formulation , which says that if sets x and y have the same elements, then they also belong to the same sets.
Metalogical properties
One motivation for the use of first-order logic, rather than higher-order logic, is that first-order logic has many metalogical properties that stronger logics do not have. These results concern general properties of first-order logic itself, rather than properties of individual theories. They provide fundamental tools for the construction of models of first-order theories.
Completeness and undecidability
Gödel's completeness theorem, proved by Kurt Gödel in 1929, establishes that there are sound, complete, effective deductive systems for first-order logic, and thus the first-order logical consequence relation is captured by finite provability. Naively, the statement that a formula φ logically implies a formula ψ depends on every model of φ; these models will in general be of arbitrarily large cardinality, and so logical consequence cannot be effectively verified by checking every model. However, it is possible to enumerate all finite derivations and search for a derivation of ψ from φ. If ψ is logically implied by φ, such a derivation will eventually be found. Thus first-order logical consequence is semidecidable: it is possible to make an effective enumeration of all pairs of sentences (φ,ψ) such that ψ is a logical consequence of φ.
Unlike propositional logic, first-order logic is undecidable (although semidecidable), provided that the language has at least one predicate of arity at least 2 (other than equality). This means that there is no decision procedure that determines whether arbitrary formulas are logically valid. This result was established independently by Alonzo Church and Alan Turing in 1936 and 1937, respectively, giving a negative answer to the Entscheidungsproblem posed by David Hilbert and Wilhelm Ackermann in 1928. Their proofs demonstrate a connection between the unsolvability of the decision problem for first-order logic and the unsolvability of the halting problem.
There are systems weaker than full first-order logic for which the logical consequence relation is decidable. These include propositional logic and monadic predicate logic, which is first-order logic restricted to unary predicate symbols and no function symbols. Other logics with no function symbols which are decidable are the guarded fragment of first-order logic, as well as two-variable logic. The Bernays–Schönfinkel class of first-order formulas is also decidable. Decidable subsets of first-order logic are also studied in the framework of description logics.
The Löwenheim–Skolem theorem
The Löwenheim–Skolem theorem shows that if a first-order theory of cardinality λ has an infinite model, then it has models of every infinite cardinality greater than or equal to λ. One of the earliest results in model theory, it implies that it is not possible to characterize countability or uncountability in a first-order language with a countable signature. That is, there is no first-order formula φ(x) such that an arbitrary structure M satisfies φ if and only if the domain of discourse of M is countable (or, in the second case, uncountable).
The Löwenheim–Skolem theorem implies that infinite structures cannot be categorically axiomatized in first-order logic. For example, there is no first-order theory whose only model is the real line: any first-order theory with an infinite model also has a model of cardinality larger than the continuum. Since the real line is infinite, any theory satisfied by the real line is also satisfied by some nonstandard models. When the Löwenheim–Skolem theorem is applied to first-order set theories, the nonintuitive consequences are known as Skolem's paradox.
The compactness theorem
The compactness theorem states that a set of first-order sentences has a model if and only if every finite subset of it has a model.[28] This implies that if a formula is a logical consequence of an infinite set of first-order axioms, then it is a logical consequence of some finite number of those axioms. This theorem was proved first by Kurt Gödel as a consequence of the completeness theorem, but many additional proofs have been obtained over time. It is a central tool in model theory, providing a fundamental method for constructing models.
The compactness theorem has a limiting effect on which collections of first-order structures are elementary classes. For example, the compactness theorem implies that any theory that has arbitrarily large finite models has an infinite model. Thus the class of all finite graphs is not an elementary class (the same holds for many other algebraic structures).
There are also more subtle limitations of first-order logic that are implied by the compactness theorem. For example, in computer science, many situations can be modeled as a directed graph of states (nodes) and connections (directed edges). Validating such a system may require showing that no "bad" state can be reached from any "good" state. Thus one seeks to determine if the good and bad states are in different connected components of the graph. However, the compactness theorem can be used to show that connected graphs are not an elementary class in first-order logic, and there is no formula φ(x,y) of first-order logic, in the logic of graphs, that expresses the idea that there is a path from x to y. Connectedness can be expressed in second-order logic, however, but not with only existential set quantifiers, as also enjoys compactness.
Lindström's theorem
Per Lindström showed that the metalogical properties just discussed actually characterize first-order logic in the sense that no stronger logic can also have those properties (Ebbinghaus and Flum 1994, Chapter XIII). Lindström defined a class of abstract logical systems, and a rigorous definition of the relative strength of a member of this class. He established two theorems for systems of this type:
- A logical system satisfying Lindström's definition that contains first-order logic and satisfies both the Löwenheim–Skolem theorem and the compactness theorem must be equivalent to first-order logic.
- A logical system satisfying Lindström's definition that has a semidecidable logical consequence relation and satisfies the Löwenheim–Skolem theorem must be equivalent to first-order logic.
Limitations
Although first-order logic is sufficient for formalizing much of mathematics, and is commonly used in computer science and other fields, it has certain limitations. These include limitations on its expressiveness and limitations of the fragments of natural languages that it can describe.
For instance, first-order logic is undecidable, meaning a sound, complete and terminating decision algorithm for provability is impossible. This has led to the study of interesting decidable fragments, such as C2: first-order logic with two variables and the counting quantifiers and .[29]
Expressiveness
The Löwenheim–Skolem theorem shows that if a first-order theory has any infinite model, then it has infinite models of every cardinality. In particular, no first-order theory with an infinite model can be categorical. Thus there is no first-order theory whose only model has the set of natural numbers as its domain, or whose only model has the set of real numbers as its domain. Many extensions of first-order logic, including infinitary logics and higher-order logics, are more expressive in the sense that they do permit categorical axiomatizations of the natural numbers or real numbers[clarification needed]. This expressiveness comes at a metalogical cost, however: by Lindström's theorem, the compactness theorem and the downward Löwenheim–Skolem theorem cannot hold in any logic stronger than first-order.
Formalizing natural languages
First-order logic is able to formalize many simple quantifier constructions in natural language, such as "every person who lives in Perth lives in Australia". Hence, first-order logic is used as a basis for knowledge representation languages, such as FO(.).
Still, there are complicated features of natural language that cannot be expressed in first-order logic. "Any logical system which is appropriate as an instrument for the analysis of natural language needs a much richer structure than first-order predicate logic".[30]
Type | Example | Comment |
---|---|---|
Quantification over properties | If John is self-satisfied, then there is at least one thing he has in common with Peter. | Example requires a quantifier over predicates, which cannot be implemented in single-sorted first-order logic: Zj → ∃X(Xj∧Xp). |
Quantification over properties | Santa Claus has all the attributes of a sadist. | Example requires quantifiers over predicates, which cannot be implemented in single-sorted first-order logic: ∀X(∀x(Sx → Xx) → Xs). |
Predicate adverbial | John is walking quickly. | Example cannot be analysed as Wj ∧ Qj; predicate adverbials are not the same kind of thing as second-order predicates such as colour. |
Relative adjective | Jumbo is a small elephant. | Example cannot be analysed as Sj ∧ Ej; predicate adjectives are not the same kind of thing as second-order predicates such as colour. |
Predicate adverbial modifier | John is walking very quickly. | — |
Relative adjective modifier | Jumbo is terribly small. | An expression such as "terribly", when applied to a relative adjective such as "small", results in a new composite relative adjective "terribly small". |
Prepositions | Mary is sitting next to John. | The preposition "next to" when applied to "John" results in the predicate adverbial "next to John". |
Restrictions, extensions, and variations
There are many variations of first-order logic. Some of these are inessential in the sense that they merely change notation without affecting the semantics. Others change the expressive power more significantly, by extending the semantics through additional quantifiers or other new logical symbols. For example, infinitary logics permit formulas of infinite size, and modal logics add symbols for possibility and necessity.
Restricted languages
First-order logic can be studied in languages with fewer logical symbols than were described above.
- Because can be expressed as , and can be expressed as , either of the two quantifiers and can be dropped.
- Since can be expressed as and can be expressed as , either or can be dropped. In other words, it is sufficient to have and , or and , as the only logical connectives.
- Similarly, it is sufficient to have only and as logical connectives, or to have only the Sheffer stroke (NAND) or the Peirce arrow (NOR) operator.
- It is possible to entirely avoid function symbols and constant symbols, rewriting them via predicate symbols in an appropriate way. For example, instead of using a constant symbol one may use a predicate (interpreted as ), and replace every predicate such as with . A function such as will similarly be replaced by a predicate interpreted as . This change requires adding additional axioms to the theory at hand, so that interpretations of the predicate symbols used have the correct semantics.[31]
Restrictions such as these are useful as a technique to reduce the number of inference rules or axiom schemas in deductive systems, which leads to shorter proofs of metalogical results. The cost of the restrictions is that it becomes more difficult to express natural-language statements in the formal system at hand, because the logical connectives used in the natural language statements must be replaced by their (longer) definitions in terms of the restricted collection of logical connectives. Similarly, derivations in the limited systems may be longer than derivations in systems that include additional connectives. There is thus a trade-off between the ease of working within the formal system and the ease of proving results about the formal system.
It is also possible to restrict the arities of function symbols and predicate symbols, in sufficiently expressive theories. One can in principle dispense entirely with functions of arity greater than 2 and predicates of arity greater than 1 in theories that include a pairing function. This is a function of arity 2 that takes pairs of elements of the domain and returns an ordered pair containing them. It is also sufficient to have two predicate symbols of arity 2 that define projection functions from an ordered pair to its components. In either case it is necessary that the natural axioms for a pairing function and its projections are satisfied.
Many-sorted logic
Ordinary first-order interpretations have a single domain of discourse over which all quantifiers range. Many-sorted first-order logic allows variables to have different sorts, which have different domains. This is also called typed first-order logic, and the sorts called types (as in data type), but it is not the same as first-order type theory. Many-sorted first-order logic is often used in the study of second-order arithmetic.[32]
When there are only finitely many sorts in a theory, many-sorted first-order logic can be reduced to single-sorted first-order logic.[33]: 296–299 One introduces into the single-sorted theory a unary predicate symbol for each sort in the many-sorted theory, and adds an axiom saying that these unary predicates partition the domain of discourse. For example, if there are two sorts, one adds predicate symbols and and the axiom
- .
Then the elements satisfying are thought of as elements of the first sort, and elements satisfying as elements of the second sort. One can quantify over each sort by using the corresponding predicate symbol to limit the range of quantification. For example, to say there is an element of the first sort satisfying formula φ(x), one writes
- .
Additional quantifiers
Additional quantifiers can be added to first-order logic.
- Sometimes it is useful to say that "P(x) holds for exactly one x", which can be expressed as ∃!x P(x). This notation, called uniqueness quantification, may be taken to abbreviate a formula such as ∃x (P(x) ∧∀y (P(y) → (x = y))).
- First-order logic with extra quantifiers has new quantifiers Qx,..., with meanings such as "there are many x such that ...". Also see branching quantifiers and the plural quantifiers of George Boolos and others.
- Bounded quantifiers are often used in the study of set theory or arithmetic.
Infinitary logics
Infinitary logic allows infinitely long sentences. For example, one may allow a conjunction or disjunction of infinitely many formulas, or quantification over infinitely many variables. Infinitely long sentences arise in areas of mathematics including topology and model theory.
Infinitary logic generalizes first-order logic to allow formulas of infinite length. The most common way in which formulas can become infinite is through infinite conjunctions and disjunctions. However, it is also possible to admit generalized signatures in which function and relation symbols are allowed to have infinite arities, or in which quantifiers can bind infinitely many variables. Because an infinite formula cannot be represented by a finite string, it is necessary to choose some other representation of formulas; the usual representation in this context is a tree. Thus formulas are, essentially, identified with their parse trees, rather than with the strings being parsed.
The most commonly studied infinitary logics are denoted Lαβ, where α and β are each either cardinal numbers or the symbol ∞. In this notation, ordinary first-order logic is Lωω. In the logic L∞ω, arbitrary conjunctions or disjunctions are allowed when building formulas, and there is an unlimited supply of variables. More generally, the logic that permits conjunctions or disjunctions with less than κ constituents is known as Lκω. For example, Lω1ω permits countable conjunctions and disjunctions.
The set of free variables in a formula of Lκω can have any cardinality strictly less than κ, yet only finitely many of them can be in the scope of any quantifier when a formula appears as a subformula of another.[34] In other infinitary logics, a subformula may be in the scope of infinitely many quantifiers. For example, in Lκ∞, a single universal or existential quantifier may bind arbitrarily many variables simultaneously. Similarly, the logic Lκλ permits simultaneous quantification over fewer than λ variables, as well as conjunctions and disjunctions of size less than κ.
Non-classical and modal logics
- Intuitionistic first-order logic uses intuitionistic rather than classical propositional calculus; for example, ¬¬φ need not be equivalent to φ.
- First-order modal logic allows one to describe other possible worlds as well as this contingently true world which we inhabit. In some versions, the set of possible worlds varies depending on which possible world one inhabits. Modal logic has extra modal operators with meanings which can be characterized informally as, for example "it is necessary that φ" (true in all possible worlds) and "it is possible that φ" (true in some possible world). With standard first-order logic we have a single domain and each predicate is assigned one extension. With first-order modal logic we have a domain function that assigns each possible world its own domain, so that each predicate gets an extension only relative to these possible worlds. This allows us to model cases where, for example, Alex is a philosopher, but might have been a mathematician, and might not have existed at all. In the first possible world P(a) is true, in the second P(a) is false, and in the third possible world there is no a in the domain at all.
- First-order fuzzy logics are first-order extensions of propositional fuzzy logics rather than classical propositional calculus.
Fixpoint logic
Fixpoint logic extends first-order logic by adding the closure under the least fixed points of positive operators.[35]
Higher-order logics
The characteristic feature of first-order logic is that individuals can be quantified, but not predicates. Thus
is a legal first-order formula, but
is not, in most formalizations of first-order logic. Second-order logic extends first-order logic by adding the latter type of quantification. Other higher-order logics allow quantification over even higher types than second-order logic permits. These higher types include relations between relations, functions from relations to relations between relations, and other higher-type objects. Thus the "first" in first-order logic describes the type of objects that can be quantified.
Unlike first-order logic, for which only one semantics is studied, there are several possible semantics for second-order logic. The most commonly employed semantics for second-order and higher-order logic is known as full semantics. The combination of additional quantifiers and the full semantics for these quantifiers makes higher-order logic stronger than first-order logic. In particular, the (semantic) logical consequence relation for second-order and higher-order logic is not semidecidable; there is no effective deduction system for second-order logic that is sound and complete under full semantics.
Second-order logic with full semantics is more expressive than first-order logic. For example, it is possible to create axiom systems in second-order logic that uniquely characterize the natural numbers and the real line. The cost of this expressiveness is that second-order and higher-order logics have fewer attractive metalogical properties than first-order logic. For example, the Löwenheim–Skolem theorem and compactness theorem of first-order logic become false when generalized to higher-order logics with full semantics.
Automated theorem proving and formal methods
Automated theorem proving refers to the development of computer programs that search and find derivations (formal proofs) of mathematical theorems.[36] Finding derivations is a difficult task because the search space can be very large; an exhaustive search of every possible derivation is theoretically possible but computationally infeasible for many systems of interest in mathematics. Thus complicated heuristic functions are developed to attempt to find a derivation in less time than a blind search.[citation needed]
The related area of automated proof verification uses computer programs to check that human-created proofs are correct. Unlike complicated automated theorem provers, verification systems may be small enough that their correctness can be checked both by hand and through automated software verification. This validation of the proof verifier is needed to give confidence that any derivation labeled as "correct" is actually correct.
Some proof verifiers, such as Metamath, insist on having a complete derivation as input. Others, such as Mizar and Isabelle, take a well-formatted proof sketch (which may still be very long and detailed) and fill in the missing pieces by doing simple proof searches or applying known decision procedures: the resulting derivation is then verified by a small core "kernel". Many such systems are primarily intended for interactive use by human mathematicians: these are known as proof assistants. They may also use formal logics that are stronger than first-order logic, such as type theory. Because a full derivation of any nontrivial result in a first-order deductive system will be extremely long for a human to write,[37] results are often formalized as a series of lemmas, for which derivations can be constructed separately.
Automated theorem provers are also used to implement formal verification in computer science. In this setting, theorem provers are used to verify the correctness of programs and of hardware such as processors with respect to a formal specification. Because such analysis is time-consuming and thus expensive, it is usually reserved for projects in which a malfunction would have grave human or financial consequences.
For the problem of model checking, efficient algorithms are known to decide whether an input finite structure satisfies a first-order formula, in addition to computational complexity bounds: see Model checking § First-order logic.
See also
- ACL2 — A Computational Logic for Applicative Common Lisp
- Aristotelian logic
- Equiconsistency
- Ehrenfeucht-Fraisse game
- Extension by definitions
- Extension (predicate logic)
- Herbrandization
- List of logic symbols
- Löwenheim number
- Nonfirstorderizability
- Prenex normal form
- Prior Analytics
- Prolog
- Relational algebra
- Relational model
- Skolem normal form
- Tarski's World
- Truth table
- Type (model theory)
Notes
- Avigad, et al. (2007) discuss the process of formally verifying a proof of the prime number theorem. The formalized proof required approximately 30,000 lines of input to the Isabelle proof verifier.
References
- Rautenberg, Wolfgang (2010), A Concise Introduction to Mathematical Logic (3rd ed.), New York, NY: Springer Science+Business Media, doi:10.1007/978-1-4419-1221-3, ISBN 978-1-4419-1220-6
- Andrews, Peter B. (2002); An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof, 2nd ed., Berlin: Kluwer Academic Publishers. Available from Springer.
- Avigad, Jeremy; Donnelly, Kevin; Gray, David; and Raff, Paul (2007); "A formally verified proof of the prime number theorem", ACM Transactions on Computational Logic, vol. 9 no. 1 doi:10.1145/1297658.1297660
- Barwise, Jon (1977). "An Introduction to First-Order Logic". In Barwise, Jon (ed.). Handbook of Mathematical Logic. Studies in Logic and the Foundations of Mathematics. Amsterdam, NL: North-Holland (published 1982). ISBN 978-0-444-86388-1.
- Monk, J. Donald (1976). Mathematical Logic. New York, NY: Springer New York. doi:10.1007/978-1-4684-9452-5. ISBN 978-1-4684-9454-9.
- Barwise, Jon; and Etchemendy, John (2000); Language Proof and Logic, Stanford, CA: CSLI Publications (Distributed by the University of Chicago Press)
- Bocheński, Józef Maria (2007); A Précis of Mathematical Logic, Dordrecht, NL: D. Reidel, translated from the French and German editions by Otto Bird
- Ferreirós, José (2001); The Road to Modern Logic — An Interpretation, Bulletin of Symbolic Logic, Volume 7, Issue 4, 2001, pp. 441–484, doi:10.2307/2687794, JSTOR 2687794
- Gamut, L. T. F. (1991), Logic, Language, and Meaning, Volume 2: Intensional Logic and Logical Grammar, Chicago, Illinois: University of Chicago Press, ISBN 0-226-28088-8
- Hilbert, David; and Ackermann, Wilhelm (1950); Principles of Mathematical Logic, Chelsea (English translation of Grundzüge der theoretischen Logik, 1928 German first edition)
- Hodges, Wilfrid (2001); "Classical Logic I: First-Order Logic", in Goble, Lou (ed.); The Blackwell Guide to Philosophical Logic, Blackwell
- Ebbinghaus, Heinz-Dieter; Flum, Jörg; and Thomas, Wolfgang (1994); Mathematical Logic, Undergraduate Texts in Mathematics, Berlin, DE/New York, NY: Springer-Verlag, Second Edition, ISBN 978-0-387-94258-2
- Tarski, Alfred and Givant, Steven (1987); A Formalization of Set Theory without Variables. Vol.41 of American Mathematical Society colloquium publications, Providence RI: American Mathematical Society, ISBN 978-0821810415
External links
- "Predicate calculus", Encyclopedia of Mathematics, EMS Press, 2001 [1994]
- Stanford Encyclopedia of Philosophy: Shapiro, Stewart; "Classical Logic". Covers syntax, model theory, and metatheory for first-order logic in the natural deduction style.
- Magnus, P. D.; forall x: an introduction to formal logic. Covers formal semantics and proof theory for first-order logic.
- Metamath: an ongoing online project to reconstruct mathematics as a huge first-order theory, using first-order logic and the axiomatic set theory ZFC. Principia Mathematica modernized.
- Podnieks, Karl; Introduction to mathematical logic
- Cambridge Mathematical Tripos notes (typeset by John Fremlin). These notes cover part of a past Cambridge Mathematical Tripos course taught to undergraduate students (usually) within their third year. The course is entitled "Logic, Computation and Set Theory" and covers Ordinals and cardinals, Posets and Zorn's Lemma, Propositional logic, Predicate logic, Set theory and Consistency issues related to ZFC and other set theories.
- Tree Proof Generator can validate or invalidate formulas of first-order logic through the semantic tableaux method.
https://en.wikipedia.org/wiki/First-order_logic
Description logics (DL) are a family of formal knowledge representation languages. Many DLs are more expressive than propositional logic but less expressive than first-order logic. In contrast to the latter, the core reasoning problems for DLs are (usually) decidable, and efficient decision procedures have been designed and implemented for these problems. There are general, spatial, temporal, spatiotemporal, and fuzzy description logics, and each description logic features a different balance between expressive power and reasoning complexity by supporting different sets of mathematical constructors.[1]
DLs are used in artificial intelligence to describe and reason about the relevant concepts of an application domain (known as terminological knowledge). It is of particular importance in providing a logical formalism for ontologies and the Semantic Web: the Web Ontology Language (OWL) and its profiles are based on DLs. The most notable application of DLs and OWL is in biomedical informatics where DL assists in the codification of biomedical knowledge.[citation needed]
Introduction
A description logic (DL) models concepts, roles and individuals, and their relationships.
The fundamental modeling concept of a DL is the axiom—a logical statement relating roles and/or concepts.[2] This is a key difference from the frames paradigm where a frame specification declares and completely defines a class.[2]
Nomenclature
Terminology compared to FOL and OWL
The description logic community uses different terminology than the first-order logic (FOL) community for operationally equivalent notions; some examples are given below. The Web Ontology Language (OWL) uses again a different terminology, also given in the table below.
FOL | OWL | DL |
---|---|---|
constant | individual | individual |
unary predicate | class | concept |
binary predicate | property | role |
Naming convention
There are many varieties of description logics and there is an informal naming convention, roughly describing the operators allowed. The expressivity is encoded in the label for a logic starting with one of the following basic logics:
Attributive language. This is the base language which allows: | |
| |
| |
Frame based description language,[3] allows: | |
| |
| |
Existential language, allows: | |
|
Followed by any of the following extensions:
Functional properties, a special case of uniqueness quantification. | |
| |
Full existential qualification (existential restrictions that have fillers other than ). | |
| |
Concept union. | |
| |
Complex concept negation. | |
| |
Role hierarchy (subproperties: rdfs:subPropertyOf ).
| |
| |
Limited complex role inclusion axioms; reflexivity and irreflexivity; role disjointness. | |
| |
Nominals. (Enumerated classes of object value restrictions: owl:oneOf , owl:hasValue ).
| |
| |
Inverse properties. | |
| |
Cardinality restrictions (owl:cardinality , owl:maxCardinality ), a special case of counting quantification
| |
| |
Qualified cardinality restrictions (available in OWL 2, cardinality restrictions that have fillers other than ). | |
| |
Use of datatype properties, data values or data types. |
Exceptions
Some canonical DLs that do not exactly fit this convention are:
An abbreviation for with transitive roles. | |
| |
A sub-language of , which is obtained by disallowing role restriction. This is equivalent to without atomic negation. | |
| |
A sub-language of , which is obtained by disallowing limited existential quantification. | |
| |
Alias for .[4] |
Examples
As an example, is a centrally important description logic from which comparisons with other varieties can be made. is simply with complement of any concept allowed, not just atomic concepts. is used instead of the equivalent .
A further example, the description logic is the logic plus extended cardinality restrictions, and transitive and inverse roles. The naming conventions aren't purely systematic so that the logic might be referred to as and other abbreviations are also made where possible.
The Protégé ontology editor supports . Three major biomedical informatics terminology bases, SNOMED CT, GALEN, and GO, are expressible in (with additional role properties).
OWL 2 provides the expressiveness of , OWL-DL is based on , and for OWL-Lite it is .
History
Description logic was given its current name in the 1980s. Previous to this it was called (chronologically): terminological systems, and concept languages.
Knowledge representation
Frames and semantic networks lack formal (logic-based) semantics.[5] DL was first introduced into knowledge representation (KR) systems to overcome this deficiency.[5]
The first DL-based KR system was KL-ONE (by Ronald J. Brachman and Schmolze, 1985). During the '80s other DL-based systems using structural subsumption algorithms[5] were developed including KRYPTON (1983), LOOM (1987), BACK (1988), K-REP (1991) and CLASSIC (1991). This approach featured DL with limited expressiveness but relatively efficient (polynomial time) reasoning.[5]
In the early '90s, the introduction of a new tableau based algorithm paradigm allowed efficient reasoning on more expressive DL.[5] DL-based systems using these algorithms — such as KRIS (1991) — show acceptable reasoning performance on typical inference problems even though the worst case complexity is no longer polynomial.[5]
From the mid '90s, reasoners were created with good practical performance on very expressive DL with high worst case complexity.[5] Examples from this period include FaCT,[6] RACER (2001), CEL (2005), and KAON 2 (2005).
DL reasoners, such as FaCT, FaCT++,[6] RACER, DLP and Pellet,[7] implement the method of analytic tableaux. KAON2 is implemented by algorithms which reduce a SHIQ(D) knowledge base to a disjunctive datalog program.
Semantic web
The DARPA Agent Markup Language (DAML) and Ontology Inference Layer (OIL) ontology languages for the Semantic Web can be viewed as syntactic variants of DL.[8] In particular, the formal semantics and reasoning in OIL use the DL.[9] The DAML+OIL DL was developed as a submission to[10]—and formed the starting point of—the World Wide Web Consortium (W3C) Web Ontology Working Group.[11] In 2004, the Web Ontology Working Group completed its work by issuing the OWL[12] recommendation. The design of OWL is based on the family of DL[13] with OWL DL and OWL Lite based on and respectively.[13]
The W3C OWL Working Group began work in 2007 on a refinement of - and extension to - OWL.[14] In 2009, this was completed by the issuance of the OWL2 recommendation.[15] OWL2 is based on the description logic .[16] Practical experience demonstrated that OWL DL lacked several key features necessary to model complex domains.[2]
Modeling
In DL, a distinction is drawn between the so-called TBox (terminological box) and the ABox (assertional box). In general, the TBox contains sentences describing concept hierarchies (i.e., relations between concepts) while the ABox contains ground sentences stating where in the hierarchy, individuals belong (i.e., relations between individuals and concepts). For example, the statement:
-
Every employee is a person
(1)
belongs in the TBox, while the statement:
-
Bob is an employee
(2)
belongs in the ABox.
Note that the TBox/ABox distinction is not significant, in the same sense that the two "kinds" of sentences are not treated differently in first-order logic (which subsumes most DL). When translated into first-order logic, a subsumption axiom like (1) is simply a conditional restriction to unary predicates (concepts) with only variables appearing in it. Clearly, a sentence of this form is not privileged or special over sentences in which only constants ("grounded" values) appear like (2).
So why was the distinction introduced? The primary reason is that the separation can be useful when describing and formulating decision-procedures for various DL. For example, a reasoner might process the TBox and ABox separately, in part because certain key inference problems are tied to one but not the other one ('classification' is related to the TBox, 'instance checking' to the ABox). Another example is that the complexity of the TBox can greatly affect the performance of a given decision-procedure for a certain DL, independently of the ABox. Thus, it is useful to have a way to talk about that specific part of the knowledge base.
The secondary reason is that the distinction can make sense from the knowledge base modeler's perspective. It is plausible to distinguish between our conception of terms/concepts in the world (class axioms in the TBox) and particular manifestations of those terms/concepts (instance assertions in the ABox). In the above example: when the hierarchy within a company is the same in every branch but the assignment to employees is different in every department (because there are other people working there), it makes sense to reuse the TBox for different branches that do not use the same ABox.
There are two features of description logic that are not shared by most other data description formalisms: DL does not make the unique name assumption (UNA) or the closed-world assumption (CWA). Not having UNA means that two concepts with different names may be allowed by some inference to be shown to be equivalent. Not having CWA, or rather having the open world assumption (OWA) means that lack of knowledge of a fact does not immediately imply knowledge of the negation of a fact.
Formal description
Like first-order logic (FOL), a syntax defines which collections of symbols are legal expressions in a description logic, and semantics determine meaning. Unlike FOL, a DL may have several well known syntactic variants.[8]
Syntax
The syntax of a member of the description logic family is characterized by its recursive definition, in which the constructors that can be used to form concept terms are stated. Some constructors are related to logical constructors in first-order logic (FOL) such as intersection or conjunction of concepts, union or disjunction of concepts, negation or complement of concepts, universal restriction and existential restriction. Other constructors have no corresponding construction in FOL including restrictions on roles for example, inverse, transitivity and functionality.
Notation
Let C and D be concepts, a and b be individuals, and R be a role.
If a is R-related to b, then b is called an R-successor of a.
Symbol | Description | Example | Read |
---|---|---|---|
⊤ is a special concept with every individual as an instance | top | ||
empty concept | bottom | ||
intersection or conjunction of concepts | C and D | ||
union or disjunction of concepts | C or D | ||
negation or complement of concepts | not C | ||
universal restriction | all R-successors are in C | ||
existential restriction | an R-successor exists in C | ||
Concept inclusion | all C are D | ||
Concept equivalence | C is equivalent to D | ||
Concept definition | C is defined to be equal to D | ||
Concept assertion | a is a C | ||
Role assertion | a is R-related to b |
The description logic ALC
The prototypical DL Attributive Concept Language with Complements () was introduced by Manfred Schmidt-Schauß and Gert Smolka in 1991, and is the basis of many more expressive DLs.[5] The following definitions follow the treatment in Baader et al.[5]
Let , and be (respectively) sets of concept names (also known as atomic concepts), role names and individual names (also known as individuals, nominals or objects). Then the ordered triple (, , ) is the signature.
Concepts
The set of concepts is the smallest set such that:
- The following are concepts:
- (top is a concept)
- (bottom is a concept)
- Every (all atomic concepts are concepts)
- If and are concepts and then the following are concepts:
- (the intersection of two concepts is a concept)
- (the union of two concepts is a concept)
- (the complement of a concept is a concept)
- (the universal restriction of a concept by a role is a concept)
- (the existential restriction of a concept by a role is a concept)
Terminological axioms
A general concept inclusion (GCI) has the form where and are concepts. Write when and . A TBox is any finite set of GCIs.
Assertional axioms
- A concept assertion is a statement of the form where and C is a concept.
- A role assertion is a statement of the form where and R is a role.
An ABox is a finite set of assertional axioms.
Knowledge base
A knowledge base (KB) is an ordered pair for TBox and ABox .
Semantics
The semantics of description logics are defined by interpreting concepts as sets of individuals and roles as sets of ordered pairs of individuals. Those individuals are typically assumed from a given domain. The semantics of non-atomic concepts and roles is then defined in terms of atomic concepts and roles. This is done by using a recursive definition similar to the syntax.
The description logic ALC
The following definitions follow the treatment in Baader et al.[5]
A terminological interpretation over a signature consists of
- a non-empty set called the domain
- a interpretation function that maps:
- every individual to an element
- every concept to a subset of
- every role name to a subset of
such that
- (union means disjunction)
- (intersection means conjunction)
- (complement means negation)
Define (read in I holds) as follows
TBox
- if and only if
- if and only if for every
ABox
- if and only if
- if and only if
- if and only if for every
Knowledge base
Let be a knowledge base.
- if and only if and
Inference
Decision problems
In addition to the ability to describe concepts formally, one also would like to employ the description of a set of concepts to ask questions about the concepts and instances described. The most common decision problems are basic database-query-like questions like instance checking (is a particular instance (member of an ABox) a member of a given concept) and relation checking (does a relation/role hold between two instances, in other words does a have property b), and the more global-database-questions like subsumption (is a concept a subset of another concept), and concept consistency (is there no contradiction among the definitions or chain of definitions). The more operators one includes in a logic and the more complicated the TBox (having cycles, allowing non-atomic concepts to include each other), usually the higher the computational complexity is for each of these problems (see Description Logic Complexity Navigator for examples).
Relationship with other logics
First-order logic
Many DLs are decidable fragments of first-order logic (FOL)[5] and are usually fragments of two-variable logic or guarded logic. In addition, some DLs have features that are not covered in FOL; this includes concrete domains (such as integer or strings, which can be used as ranges for roles such as hasAge or hasName) or an operator on roles for the transitive closure of that role.[5]
Fuzzy description logic
Fuzzy description logics combines fuzzy logic with DLs. Since many concepts that are needed for intelligent systems lack well defined boundaries, or precisely defined criteria of membership, fuzzy logic is needed to deal with notions of vagueness and imprecision. This offers a motivation for a generalization of description logic towards dealing with imprecise and vague concepts.
Modal logic
Description logic is related to—but developed independently of—modal logic (ML).[5] Many—but not all—DLs are syntactic variants of ML.[5]
In general, an object corresponds to a possible world, a concept corresponds to a modal proposition, and a role-bounded quantifier to a modal operator with that role as its accessibility relation.
Operations on roles (such as composition, inversion, etc.) correspond to the modal operations used in dynamic logic.[17]
Examples
DL | ML |
---|---|
K[5] | |
PDL[17] | |
DPDL (deterministic PDL)[17] | |
Converse-PDL[17] | |
Converse-DPDL (deterministic PDL)[17] |
Temporal description logic
Temporal description logic represents—and allows reasoning about—time dependent concepts and many different approaches to this problem exist.[18] For example, a description logic might be combined with a modal temporal logic such as linear temporal logic.
See also
References
- Alessandro Artale and Enrico Franconi "Temporal Description Logics". In "Handbook of Temporal Reasoning in Artificial Intelligence", 2005.
Further reading
- F. Baader, D. Calvanese, D. L. McGuinness, D. Nardi, P. F. Patel-Schneider: The Description Logic Handbook: Theory, Implementation, Applications. Cambridge University Press, Cambridge, UK, 2003. ISBN 0-521-78176-0
- Ian Horrocks, Ulrike Sattler: Ontology Reasoning in the SHOQ(D) Description Logic, in Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence, 2001.
- D. Fensel, F. van Harmelen, I. Horrocks, D. McGuinness, and P. F. Patel-Schneider: OIL: An Ontology Infrastructure for the Semantic Web. IEEE Intelligent Systems, 16(2):38-45, 2001.
- Ian Horrocks and Peter F. Patel-Schneider: The Generation of DAML+OIL. In Proceedings of the 2001 Description Logic Workshop (DL 2001), volume 49 of CEUR <http://ceur-ws.org/>, pages 30–35, 2001.
- Ian Horrocks, Peter F. Patel-Schneider, and Frank van Harmelen: From SHIQ and RDF to OWL: The Making of a Web Ontology Language. Journal of Web Semantics, 1(1):7-26, 2003.
- Bernardo Cuenca Grau, Ian Horrocks, Boris Motik, Bijan Parsia, Peter Patel-Schneider, and Ulrike Sattler: OWL 2: The next step for OWL. Journal of Web Semantics, 6(4):309-322, November 2008.
- Franz Baader, Ian Horrocks, and Ulrike Sattler: Chapter 3 Description Logics. In Frank van Harmelen, Vladimir Lifschitz, and Bruce Porter, editors, Handbook of Knowledge Representation. Elsevier, 2007.
- Alessandro Artale and Enrico Franconi: Temporal Description Logics. In Handbook of Temporal Reasoning in Artificial Intelligence, 2005.
- Web Ontology (WebONT) Working Group Charter. W3C, 2003
- World Wide Web Consortium Issues RDF and OWL Recommendations. Press Release. W3C, 2004.
- OWL Working Group Charter. W3C, 2007.
- OWL 2 Connects the Web of Knowledge with the Web of Data. Press Release. W3C, 2009.
- Markus Krötzsch, František Simančík, Ian Horrocks: A Description Logic Primer. CoRR arXiv:1201.4089. 2012. A very first introduction for readers without a formal logic background.
- Sebastian Rudolph: Foundations of Description Logics. In Reasoning Web: Semantic Technologies for the Web of Data, 7th International Summer School, volume 6848 of Lecture Notes in Computer Science, pages 76–136. Springer, 2011. (springerlink)Introductory text with a focus on modelling and formal semantics. There are also slides.
- Jens Lehmann: DL-Learner: Learning concepts in description logics, Journal of Machine Learning Research, 2009.
- Franz Baader: Description Logics. In Reasoning Web: Semantic Technologies for Information Systems, 5th International Summer School, volume 5689 of Lecture Notes in Computer Science, pages 1–39. Springer, 2009. (springerlink) Introductory text with a focus on reasoning and language design, and an extended historical overview.
- Enrico Franconi: Introduction to Description Logics. Course materials. Faculty of Computer Science, Free University of Bolzano, Italy, 2002. Lecture slides and many literature pointers, somewhat dated.
- Ian Horrocks: Ontologies and the Semantic Web. Communications of the ACM, 51(12):58-67, December 2008. A general overview of knowledge representation in Semantic Web technologies.
External links
- Description Logic Complexity Navigator, maintained by Evgeny Zolin at the Department of Computer Science
- List of Reasoners, OWL research at the University of Manchester
Reasoners
There are some semantic reasoners that deal with OWL and DL. These are some of the most popular:
- CEL is an open source LISP-based reasoner (Apache 2.0 License).
- Cerebra Engine was a commercial C++-based reasoner, acquired in 2006 by webMethods.
- FaCT++ is a free open-source C++-based reasoner.
- KAON2 is a free (for non-commercial use) Java-based reasoner, offering fast reasoning support for OWL ontologies.
- MSPASS is a free open-source C reasoner for numerous DL models.
- Pellet is a dual-licensed (AGPL and proprietary) commercial, Java-based reasoner.
- RacerPro of Racer Systems was a commercial (free trials and research licenses are available) lisp-based reasoner, today both an open source version of RACER exists from the original developers at Lübeck University using the BSD 3 license, and also a commercialized version, still named RacerPro by Franz Inc.
- Sim-DL is a free open-source Java-based reasoner for the language ALCHQ. It also provides a similarity measurement functionality between concepts. To access this functionality a Protégé plugin can be used.
- HermiT is an open-source reasoner based on the "hypertableau" calculus. It is developed by the University of Oxford.
- Owlready2 is a package for ontology-oriented programming in Python. It can load OWL 2.0 ontologies as Python objects, modify them, save them, and perform reasoning via HermiT (included). Owlready2 allows a transparent access to OWL ontologies (contrary to usual Java-based API).
Editors
- Protégé is a free, open-source ontology editor and a knowledge base framework, which can use DL reasoners offering DIG Interface as a back end for consistency checks.
- SWOOP on GitHub, an OWL browser/editor that takes the standard web browser as the basic UI paradigm.
Interfaces
- DIG Interface on SourceForge, a standardized XML interface to DLs systems developed by the DL Implementation Group (DIG).
- OWL API on SourceForge, a Java interface and implementation for the Web Ontology Language, used to represent Semantic Web ontologies.
https://en.wikipedia.org/wiki/Description_logic
Universal Networking Language (UNL) is a declarative formal language specifically designed to represent semantic data extracted from natural language texts. It can be used as a pivot language in interlingual machine translation systems or as a knowledge representation language in information retrieval applications.
Scope and goals
UNL is designed to establish a simple foundation for representing the most central aspects of information and meaning in a machine- and human-language-independent form. As a language-independent formalism, UNL aims to code, store, disseminate and retrieve information independently of the original language in which it was expressed. In this sense, UNL seeks to provide tools for overcoming the language barrier in a systematic way.
At first glance, UNL seems to be a kind of interlingua, into which source texts are converted before being translated into target languages. It can, in fact, be used for this purpose, and very efficiently, too. However, its real strength is knowledge representation and its primary objective is to provide an infrastructure for handling knowledge that already exists or can exist in any given language.
Nevertheless, it is important to note that at present it would be foolish to claim to represent the “full” meaning of any word, sentence, or text for any language. Subtleties of intention and interpretation make the “full meaning,” however we might conceive it, too variable and subjective for any systematic treatment. Thus UNL avoids the pitfalls of trying to represent the “full meaning” of sentences or texts, targeting instead the “core” or “consensual” meaning most often attributed to them. In this sense, much of the subtlety of poetry, metaphor, figurative language, innuendo, and other complex, indirect communicative behaviors is beyond the current scope and goals of UNL. Instead, UNL targets direct communicative behavior and literal meaning as a tangible, concrete basis for most human communication in practical, day-to-day settings.
Structure
In the UNL approach, information conveyed by natural language is represented sentence by sentence as a hypergraph composed of a set of directed binary labeled links (referred to as relations) between nodes or hypernodes (the Universal Words, or simply UWs), which stand for concepts. UWs can also be annotated with attributes representing context information.
As an example, the English sentence ‘The sky was blue?!’ can be represented in UNL as follows:
In the example above, sky(icl>natural world)
and blue(icl>color)
,
which represent individual concepts, are UWs; "aoj" (= attribute of an
object) is a directed binary semantic relation linking the two UWs; and
"@def", "@interrogative", "@past", "@exclamation" and "@entry" are
attributes modifying UWs.
UWs are intended to represent universal concepts, but are expressed in English words or in any other natural language in order to be humanly readable. They consist of a "headword" (the UW root) and a "constraint list" (the UW suffix between parentheses), where the constraints are used to disambiguate the general concept conveyed by the headword. The set of UWs is organized in the UNL Ontology, in which high-level concepts are related to lower-level ones through the relations "icl" (= is a kind of), "iof" (= is an instance of) and "equ" (= is equal to).
Relations are intended to represent semantic links between words in every existing language. They can be ontological (such as "icl" and "iof," referred to above), logical (such as "and" and "or"), and thematic (such as "agt" = agent, "ins" = instrument, "tim" = time, "plc" = place, etc.). There are currently 46 relations in the UNL Specs. They jointly define the UNL syntax.
Attributes represent information that cannot be conveyed by UWs and relations. Normally, they represent information concerning time ("@past", "@future", etc.), reference ("@def", "@indef", etc.), modality ("@can", "@must", etc.), focus ("@topic", "@focus", etc.), and so on.
Within the UNL Program, the process of representing natural language sentences in UNL graphs is called UNLization, and the process of generating natural language sentences out of UNL graphs is called NLization. UNLization, which involves natural language analysis and understanding, is intended to be carried out semi-automatically (i.e., by humans with computer aids); and NLization is intended to be carried out fully automatically.
History
The UNL Programme started in 1996, as an initiative of the Institute of Advanced Studies of the United Nations University in Tokyo, Japan. In January 2001, the United Nations University set up an autonomous organization, the UNDL Foundation, to be responsible for the development and management of the UNL Programme. The foundation, a non-profit international organisation, has an independent identity from the United Nations University, although it has special links with the UN. It inherited from the UNU/IAS the mandate of implementing the UNL Programme so that it can fulfil its mission.
The programme has already crossed important milestones. The overall architecture of the UNL System has been developed with a set of basic software and tools necessary for its functioning. These are being tested and improved. A vast amount of linguistic resources from the various native languages already under development, as well as from the UNL expression, has been accumulated in the last few years. Moreover, the technical infrastructure for expanding these resources is already in place, thus facilitating the participation of many more languages in the UNL system from now on. A growing number of scientific papers and academic dissertations on the UNL are being published every year.
The most visible accomplishment so far is the recognition by the Patent Co-operation Treaty (PCT) of the innovative character and industrial applicability of the UNL, which was obtained in May 2002 through the World Intellectual Property Organisation (WIPO). Acquiring the patents (US patents 6,704,700 and 7,107,206) for the UNL is a completely novel achievement within the United Nations.
See also
- Semantic network
- Abstract semantic graph
- Semantic translation
- Semantic unification
- Abstract Meaning Representation
External links
- UNLweb, the UNLweb portal
- UNDL Foundation where UNL development is coordinated.
- Online book on UNL
- UNL system description
UNL Society
https://en.wikipedia.org/wiki/Universal_Networking_Language
In logic, a finite-valued logic (also finitely many-valued logic) is a propositional calculus in which truth values are discrete. Traditionally, in Aristotle's logic, the bivalent logic, also known as binary logic was the norm, as the law of the excluded middle precluded more than two possible values (i.e., "true" and "false") for any proposition.[1] Modern three-valued logic (ternary logic) allows for an additional possible truth value (i.e. "undecided").[2]
The term finitely many-valued logic is typically used to describe many-valued logic having three or more, but not infinite, truth values. The term finite-valued logic encompasses both finitely many-valued logic and bivalent logic.[3][4] Fuzzy logics, which allow for degrees of values between "true" and "false"), are typically not considered forms of finite-valued logic.[5] However, finite-valued logic can be applied in Boolean-valued modeling,[6][7] description logics,[8] and defuzzification[9][10] of fuzzy logic. A finite-valued logic is decidable (sure to determine outcomes of the logic when it is applied to propositions) if and only if it has a computational semantics.[11]
History
Aristotle's collected works regarding logic, known as the Organon, describe bivalent logic primarily, though Aristotle's views may have allowed for propositions that are not actually true or false. The Organon influenced philosophers and mathematicians throughout the Enlightenment.[12][13] George Boole developed an algebraic structure and an algorithmic probability theory based on bivalent logic in the 19th century.[14]
Jan Łukasiewicz developed a system of three-valued logic in 1920. Emil Leon Post introduced further truth degrees in 1921.[15]
Stephen Cole Kleene and Ulrich Blau expanded the three-valued logic system of Łukasiewicz, for computer applications and for natural language analyses, respectively. Nuel Belnap and J. Michael Dunn developed a four-valued logic for computer applications in 1977.[16] Since the mid-1970s, various procedures for providing arbitrary finite-valued logics have been developed.[17]
Examples
In linguistics, finite-valued logic is used to treat presuppositions as product systems with ordered pairs of truth degrees, or truth tables. This enables assumptions built into verbal or written statements to be associated with varying degrees of truth values in the course of natural-language processing.[18]
In the study of formal languages, finite-valued logic has shown that encapsulating a truth predicate in a language can render the language inconsistent. Saul Kripke has built on work pioneered by Alfred Tarski[19] to demonstrate that such a truth predicate can be modeled using three-valued logic.[20]
Philosophical questions, including the Sorites paradox, have been considered based on a finite-valued logic known as fuzzy plurivaluationism.[21] The Sorites paradox suggests that if adding a grain of sand to something that is not a heap cannot create a heap, then a heap of sand cannot be created. A logical model of a heap in which there are as many truth degrees as grains of sand tends to refute that suggestion.[22]
In electronics design, a logical model of the stable states of a circuit, in which there are as many truth degrees as there are states, serves as a model for finite-valued switching.[23] Three-valued operators can be realized in integrated circuits.[24]
In fuzzy logic, typically applied for approximate reasoning, a finitely-valued logic can represent propositions that may acquire values within a finite set.[25]
In mathematics, logical matrices having multiple truth degrees are used to model systems of axioms.[26]
Biophysical indications suggest that in the brain, synaptic charge injections occur in finite steps,[27] and that neuron arrangements can be modeled based on the probability distribution of a finitely valued random variable.[28]
In the study of logic itself, finite-valued logic has served as an aid to understand the nature and existence of infinite-valued logic. Kurt Gödel attempted to comprehend the human ability for logical intuition in terms of finite-valued logic before concluding that the ability is based on infinite-valued logic.[29]
See also
References
- Burgess, John. "Intuitions of Three Kinds in Gödel's Views on the Continuum" (PDF).
https://en.wikipedia.org/wiki/Finite-valued_logic
https://en.wikipedia.org/wiki/Steady_state_(electronics)
https://en.wikipedia.org/wiki/Presupposition
https://en.wikipedia.org/wiki/Logical_intuition
https://en.wikipedia.org/wiki/Finite-valued_logic
https://en.wikipedia.org/wiki/Three-valued_logic
https://en.wikipedia.org/wiki/Problem_of_future_contingents
https://en.wikipedia.org/wiki/Three-valued_logic
- 1 for true, 2 for false, and 0 for unknown, unknowable/undecidable, irrelevant, or both;[7]
- 0 for false, 1 for true, and a third non-integer "maybe" symbol such as ?, #, ½,[8] or xy.
https://en.wikipedia.org/wiki/Three-valued_logic
https://en.wikipedia.org/wiki/Ternary_computer
https://en.wikipedia.org/wiki/Skew_binary_number_system
https://en.wikipedia.org/wiki/Redundant_binary_representation
https://en.wikipedia.org/wiki/Balanced_ternary
https://en.wikipedia.org/wiki/Ternary_numeral_system
https://en.wikipedia.org/wiki/Undecidable_problem
https://en.wikipedia.org/wiki/Ternary_signal
https://en.wikipedia.org/wiki/Bipolar_encoding
https://en.wikipedia.org/wiki/Paired_disparity_code
https://en.wikipedia.org/wiki/Unipolar_encoding
https://en.wikipedia.org/wiki/Line_code
https://en.wikipedia.org/wiki/Data_storage
https://en.wikipedia.org/wiki/Optical_character_recognition
Transmission and storage
After line coding, the signal is put through a physical communication channel, either a transmission medium or data storage medium.[3][4] The most common physical channels are:
- the line-coded signal can directly be put on a transmission line, in the form of variations of the voltage or current (often using differential signaling).
- the line-coded signal (the baseband signal) undergoes further pulse shaping (to reduce its frequency bandwidth) and then is modulated (to shift its frequency) to create an RF signal that can be sent through free space.
- the line-coded signal can be used to turn on and off a light source in free-space optical communication, most commonly used in an infrared remote control.
- the line-coded signal can be printed on paper to create a bar code.
- the line-coded signal can be converted to magnetized spots on a hard drive or tape drive.
- the line-coded signal can be converted to pits on an optical disc.
https://en.wikipedia.org/wiki/Baseband
https://en.wikipedia.org/wiki/Pulse_shaping
https://en.wikipedia.org/wiki/Intersymbol_interference
https://en.wikipedia.org/wiki/Error_correction_code#Forward_error_correction
https://en.wikipedia.org/wiki/Analog-to-digital_converter
https://en.wikipedia.org/wiki/Digital-to-analog_converter
In electronics, a digital-to-analog converter (DAC, D/A, D2A, or D-to-A) is a system that converts a digital signal into an analog signal. An analog-to-digital converter (ADC) performs the reverse function.
There are several DAC architectures; the suitability of a DAC for a particular application is determined by figures of merit including: resolution, maximum sampling frequency and others. Digital-to-analog conversion can degrade a signal, so a DAC should be specified that has insignificant errors in terms of the application.
https://en.wikipedia.org/wiki/Digital-to-analog_converter
In electrical engineering, a transmission line is a specialized cable or other structure designed to conduct electromagnetic waves in a contained manner. The term applies when the conductors are long enough that the wave nature of the transmission must be taken into account. This applies especially to radio-frequency engineering because the short wavelengths mean that wave phenomena arise over very short distances (this can be as short as millimetres depending on frequency). However, the theory of transmission lines was historically developed to explain phenomena on very long telegraph lines, especially submarine telegraph cables.
Transmission lines are used for purposes such as connecting radio transmitters and receivers with their antennas (they are then called feed lines or feeders), distributing cable television signals, trunklines routing calls between telephone switching centres, computer network connections and high speed computer data buses. RF engineers commonly use short pieces of transmission line, usually in the form of printed planar transmission lines, arranged in certain patterns to build circuits such as filters. These circuits, known as distributed-element circuits, are an alternative to traditional circuits using discrete capacitors and inductors.
https://en.wikipedia.org/wiki/Transmission_line
An acoustic transmission line is the use of a long duct, which acts as an acoustic waveguide and is used to produce or transmit sound in an undistorted manner. Technically it is the acoustic analog of the electrical transmission line, typically conceived as a rigid-walled duct or tube, that is long and thin relative to the wavelength of sound present in it.
Examples of transmission line (TL) related technologies include the (mostly obsolete) speaking tube, which transmitted sound to a different location with minimal loss and distortion, wind instruments such as the pipe organ, woodwind and brass which can be modeled in part as transmission lines (although their design also involves generating sound, controlling its timbre, and coupling it efficiently to the open air), and transmission line based loudspeakers which use the same principle to produce accurate extended low bass frequencies and avoid distortion. The comparison between an acoustic duct and an electrical transmission line is useful in "lumped-element" modeling of acoustical systems, in which acoustic elements like volumes, tubes, pistons, and screens can be modeled as single elements in a circuit. With the substitution of pressure for voltage, and volume particle velocity for current, the equations are essentially the same.[2] Electrical transmission lines can be used to describe acoustic tubes and ducts, provided the frequency of the waves in the tube is below the critical frequency, such that they are purely planar.
https://en.wikipedia.org/wiki/Acoustic_transmission_line
Free-space optical communication (FSO) is an optical communication technology that uses light propagating in free space to wirelessly transmit data for telecommunications or computer networking. "Free space" means air, outer space, vacuum, or something similar. This contrasts with using solids such as optical fiber cable.
The technology is useful where the physical connections are impractical due to high costs or other considerations.
History
Optical communications, in various forms, have been used for thousands of years. The ancient Greeks used a coded alphabetic system of signalling with torches developed by Cleoxenus, Democleitus and Polybius.[1] In the modern era, semaphores and wireless solar telegraphs called heliographs were developed, using coded signals to communicate with their recipients.
In 1880, Alexander Graham Bell and his assistant Charles Sumner Tainter created the photophone, at Bell's newly established Volta Laboratory in Washington, DC. Bell considered it his most important invention. The device allowed for the transmission of sound on a beam of light. On June 3, 1880, Bell conducted the world's first wireless telephone transmission between two buildings, some 213 meters (700 feet) apart.[2][3]
Its first practical use came in military communication systems many decades later, first for optical telegraphy. German colonial troops used heliograph telegraphy transmitters during the Herero and Namaqua genocide starting in 1904, in German South-West Africa (today's Namibia) as did British, French, US or Ottoman signals.
During the trench warfare of World War I when wire communications were often cut, German signals used three types of optical Morse transmitters called Blinkgerät, the intermediate type for distances of up to 4 km (2.5 miles) at daylight and of up to 8 km (5 miles) at night, using red filters for undetected communications. Optical telephone communications were tested at the end of the war, but not introduced at troop level. In addition, special blinkgeräts were used for communication with airplanes, balloons, and tanks, with varying success.[citation needed]
A major technological step was to replace the Morse code by modulating optical waves in speech transmission. Carl Zeiss, Jena developed the Lichtsprechgerät 80/80 (literal translation: optical speaking device) that the German army used in their World War II anti-aircraft defense units, or in bunkers at the Atlantic Wall.[4]
The invention of lasers in the 1960s revolutionized free-space optics. Military organizations were particularly interested and boosted their development. However, the technology lost market momentum when the installation of optical fiber networks for civilian uses was at its peak.
Many simple and inexpensive consumer remote controls use low-speed communication using infrared (IR) light. This is known as consumer IR technologies.
Usage and technologies
Free-space point-to-point optical links can be implemented using infrared laser light, although low-data-rate communication over short distances is possible using LEDs. Infrared Data Association (IrDA) technology is a very simple form of free-space optical communications. On the communications side the FSO technology is considered as a part of the optical wireless communications applications. Free-space optics can be used for communications between spacecraft.[5]
Useful distances
The reliability of FSO units has always been a problem for commercial telecommunications. Consistently, studies find too many dropped packets and signal errors over small ranges (400 to 500 metres (1,300 to 1,600 ft)). This is from both independent studies, such as in the Czech Republic,[6] as well as formal internal nationwide studies, such as one conducted by MRV FSO staff.[7] Military based studies consistently produce longer estimates for reliability, projecting the maximum range for terrestrial links is of the order of 2 to 3 km (1.2 to 1.9 mi).[8] All studies agree the stability and quality of the link is highly dependent on atmospheric factors such as rain, fog, dust and heat. Relays may be employed to extend the range for FSO communications.[9][10]
Extending the useful distance
The main reason terrestrial communications have been limited to non-commercial telecommunications functions is fog. Fog consistently keeps FSO laser links over 500 metres (1,600 ft) from achieving a year-round bit error rate of 1 per 100,000. Several entities are continually attempting to overcome these key disadvantages to FSO communications and field a system with a better quality of service. DARPA has sponsored over US$130 million in research toward this effort, with the ORCA and ORCLE programs.[11][12][13]
Other non-government groups are fielding tests to evaluate different technologies that some claim have the ability to address key FSO adoption challenges. As of October 2014, none have fielded a working system that addresses the most common atmospheric events.
FSO research from 1998–2006 in the private sector totaled $407.1 million, divided primarily among four start-up companies. All four failed to deliver products that would meet telecommunications quality and distance standards:[14]
- Terabeam received approximately $575 million in funding from investors such as Softbank, Mobius Venture Capital and Oakhill Venture Partners. AT&T and Lucent backed this attempt.[15][16] The work ultimately failed, and the company was purchased in 2004 for $52 million (excluding warrants and options) by Falls Church, Va.-based YDI, effective June 22, 2004, and used the name Terabeam for the new entity. On September 4, 2007, Terabeam (then headquartered in San Jose, California) announced it would change its name to Proxim Wireless Corporation, and change its NASDAQ stock symbol from TRBM to PRXM.[17]
- AirFiber received $96.1 million in funding, and never solved the weather issue. They sold out to MRV communications in 2003, and MRV sold their FSO units until 2012 when the end-of-life was abruptly announced for the Terescope series.[18]
- LightPointe Communications received $76 million in start-up funds, and eventually reorganized to sell hybrid FSO-RF units to overcome the weather-based challenges.[19]
- The Maxima Corporation published its operating theory in Science,[20] and received $9 million in funding before permanently shutting down. No known spin-off or purchase followed this effort.
- Wireless Excellence developed and launched CableFree UNITY solutions that combine FSO with millimeter wave and radio technologies to extend distance, capacity and availability, with a goal of making FSO a more useful and practical technology.[21]
One private company published a paper on November 20, 2014, claiming they had achieved commercial reliability (99.999% availability) in extreme fog. There is no indication this product is currently commercially available.[22]
Extraterrestrial
The massive advantages of laser communication in space have multiple space agencies racing to develop a stable space communication platform, with many significant demonstrations and achievements.
Operational systems
The first gigabit laser-based communication was achieved by the European Space Agency and called the European Data Relay System (EDRS) on November 28, 2014. The system is operational and is being used on a daily basis.
Demonstrations
NASA's OPALS announced a breakthrough in space-to-ground communication December 9, 2014, uploading 175 megabytes in 3.5 seconds. Their system is also able to re-acquire tracking after the signal was lost due to cloud cover.
In the early morning hours of Oct. 18, 2013, NASA's Lunar Laser Communication Demonstration (LLCD) made history, transmitting data from lunar orbit to Earth at a rate of 622 megabits per second (Mbit/s).[23] LLCD was flown aboard the Lunar Atmosphere and Dust Environment Explorer satellite (LADEE), whose primary science mission was to investigate the tenuous and exotic atmosphere that exists around the moon.
In January 2013, NASA used lasers to beam an image of the Mona Lisa to the Lunar Reconnaissance Orbiter roughly 390,000 km (240,000 mi) away. To compensate for atmospheric interference, an error correction code algorithm similar to that used in CDs was implemented.[24]
On Dec. 7, 2021, Laser Communications Relay Demonstration (LCRD), an other NASA's project aimed to relay data between spacecrafts and ground stations, launched from the Cape Canaveral Space Force Station in Florida. LCRD is the NASA’s first two-way, end-to-end optical relay. One of LCRD’s first operational users will be the Integrated LCRD Low-Earth Orbit User Modem and Amplifier Terminal (ILLUMA-T), a payload that will be hosted on the International Space Station. The terminal will receive high-resolution science data from experiments and instruments onboard the space station and then transfer this data to LCRD, which will then transmit it to a ground station. After the data arrives on Earth, it will be delivered to mission operation centers and mission scientists.
A two-way distance record for communication was set by the Mercury laser altimeter instrument aboard the MESSENGER spacecraft, and was able to communicate across a distance of 24 million km (15 million miles), as the craft neared Earth on a fly-by in May, 2005. The previous record had been set with a one-way detection of laser light from Earth, by the Galileo probe, of 6 million km (3.7 million mi) in 1992. Quote from Laser Communication in Space Demonstrations (EDRS)
Commercial use
Various satellite constellations such as SpaceX Starlink are intended to provide global broadband coverage employ laser communication for inter-satellite links between the several hundred to thousand satellites effectively creating a space-based optical mesh network.
LEDs
In 2001, Twibright Labs released RONJA Metropolis, an open source DIY 10 Mbit/s full duplex LED FSO over 1.4 km (0.87 mi).[25][26]
In 2004, a Visible Light Communication Consortium was formed in Japan.[27] This was based on work from researchers that used a white LED-based space lighting system for indoor local area network (LAN) communications. These systems present advantages over traditional UHF RF-based systems from improved isolation between systems, the size and cost of receivers/transmitters, RF licensing laws and by combining space lighting and communication into the same system.[28] In January 2009, a task force for visible light communication was formed by the Institute of Electrical and Electronics Engineers working group for wireless personal area network standards known as IEEE 802.15.7.[29] A trial was announced in 2010, in St. Cloud, Minnesota.[30]
Amateur radio operators have achieved significantly farther distances using incoherent sources of light from high-intensity LEDs. One reported 173 miles (278 km) in 2007.[31] However, physical limitations of the equipment used limited bandwidths to about 4 kHz. The high sensitivities required of the detector to cover such distances made the internal capacitance of the photodiode used a dominant factor in the high-impedance amplifier which followed it, thus naturally forming a low-pass filter with a cut-off frequency in the 4 kHz range. Lasers can reach very high data rates which are comparable to fiber communications.
Projected data rates and future data rate claims vary. A low-cost white LED (GaN-phosphor) which could be used for space lighting can typically be modulated up to 20 MHz.[32] Data rates of over 100 Mbit/s can be easily achieved using efficient modulation schemes and Siemens claimed to have achieved over 500 Mbit/s in 2010.[33] Research published in 2009, used a similar system for traffic control of automated vehicles with LED traffic lights.[34]
In September 2013, pureLiFi, the Edinburgh start-up working on Li-Fi, also demonstrated high speed point-to-point connectivity using any off-the-shelf LED light bulb. In previous work, high bandwidth specialist LEDs have been used to achieve the high data rates. The new system, the Li-1st, maximizes the available optical bandwidth for any LED device, thereby reducing the cost and improving the performance of deploying indoor FSO systems.[35]
Engineering details
Typically, the best scenarios for using this technology are:
- LAN-to-LAN connections on campuses at Fast Ethernet or Gigabit Ethernet speeds
- LAN-to-LAN connections in a city, a metropolitan area network
- To cross a public road or other barriers which the sender and receiver do not own
- Speedy service delivery of high-bandwidth access to optical fiber networks
- Converged voice-data connection
- Temporary network installation (for events or other purposes)
- Reestablish high-speed connection quickly (disaster recovery)
- As an alternative or upgrade add-on to existing wireless technologies
- Especially powerful in combination with auto aiming systems, to power moving cars or a laptop while moving. or to use auto-aiming nodes to create a network with other nodes.
- As a safety add-on for important fiber connections (redundancy)
- For communications between spacecraft, including elements of a satellite constellation
- For inter- and intra-chip communication[36]
The light beam can be very narrow, which makes FSO hard to intercept, improving security. It is comparatively easy to encrypt any data traveling across the FSO connection for additional security. FSO provides vastly improved electromagnetic interference (EMI) behavior compared to using microwaves.
Technical advantages
- Ease of deployment
- Can be used to power devices[citation needed]
- License-free long-range operation (in contrast with radio communication)
- High bit rates
- Low bit error rates
- Immunity to electromagnetic interference
- Full-duplex operation
- Protocol transparency
- Increased security when working with narrow beam(s)[37]
- No Fresnel zone necessary
- Reference open source implementation
- Reduced size, weight, and power consumption compared to RF antennas
Range-limiting factors
For terrestrial applications, the principal limiting factors are:
- Fog (10 to ~100 dB/km attenuation)
- Beam dispersion
- Atmospheric absorption
- Rain
- Snow
- Terrestrial scintillation
- Interference from background light sources (including the sun)
- Shadowing
- Pointing stability in wind
- Pollution, such as smog
These factors cause an attenuated receiver signal and lead to higher bit error ratio (BER). To overcome these issues, vendors found some solutions, like multi-beam or multi-path architectures, which use more than one sender and more than one receiver. Some state-of-the-art devices also have larger fade margin (extra power, reserved for rain, smog, fog). To keep an eye-safe environment, good FSO systems have a limited laser power density and support laser classes 1 or 1M. Atmospheric and fog attenuation, which are exponential in nature, limit practical range of FSO devices to several kilometres. However, free-space optics based on 1550 nm wavelength, have considerably lower optical loss than free-space optics using 830 nm wavelength, in dense fog conditions. FSO using wavelength 1550 nm system are capable of transmitting several times higher power than systems with 850 nm and are safe to the human eye (1M class). Additionally, some free-space optics, such as EC SYSTEM,[38] ensure higher connection reliability in bad weather conditions by constantly monitoring link quality to regulate laser diode transmission power with built-in automatic gain control.[38]
See also
- Atomic line filter#Laser tracking and communication
- Extremely high frequency
- KORUZA
- Laser safety
- Mie scattering
- Modulating retro-reflector
- N-slit interferometer
- Optical window
- Radio window
- Rayleigh scattering
- Free-space path loss
References
- praguebest.cz, PragueBest s.r.o. "Free Space optics (FSO) with capacity 10 Gigabits Full Duplex - EC System". ecsystem.cz. Retrieved 14 March 2018.
Further reading
- Christos Kontogeorgakis (May 1997). Millimeter Through Visible Frequency Waves Through Aerosols-Particle Modeling, Reflectivity and Attenuation (Thesis). Virginia Polytechnic Institute and State University. hdl:10919/37049. Master's Thesis
- Heinz Willebrand & Baksheesh Ghuman (December 2001). Free Space Optics: Enabling Optical Connectivity in Today's Networks. SAMS. Archived from the original on 2012-06-22.
- Moll, Florian (December 2013). "Free-space laser system for secure air-to-ground quantum communications". SPIE Newsroom. doi:10.1117/2.1201311.005189.
- David G. Aviv (2006). Laser Space Communications. ARTECH HOUSE. ISBN 978-1-59693-028-5.
External links
- Free Space Optics on COST297 for HAPs
- Explanation of Fresnel zones in microwave and optical links
- video showing Lichtsprechgerät 80 in use on YouTube
- International Space Station to Beam Video Via Laser Back to Earth, March 2014 NASA's Optical Payload for Lasercomm Science demonstration mission to the ISS
- Wireless Optical Link Budget (with python examples).
https://en.wikipedia.org/wiki/Free-space_optical_communication
Radio frequency (RF) is the oscillation rate of an alternating electric current or voltage or of a magnetic, electric or electromagnetic field or mechanical system in the frequency[1] range from around 20 kHz to around 300 GHz. This is roughly between the upper limit of audio frequencies and the lower limit of infrared frequencies;[2][3] these are the frequencies at which energy from an oscillating current can radiate off a conductor into space as radio waves. Different sources specify different upper and lower bounds for the frequency range.
Electric current
Electric currents that oscillate at radio frequencies (RF currents) have special properties not shared by direct current or lower audio frequency alternating current, such as the 50 or 60 Hz current used in electrical power distribution.
- Energy from RF currents in conductors can radiate into space as electromagnetic waves (radio waves). This is the basis of radio technology.
- RF current does not penetrate deeply into electrical conductors but tends to flow along their surfaces; this is known as the skin effect.
- RF currents applied to the body often do not cause the painful sensation and muscular contraction of electric shock that lower frequency currents produce.[4][5] This is because the current changes direction too quickly to trigger depolarization of nerve membranes. However this does not mean RF currents are harmless; they can cause internal injury as well as serious superficial burns called RF burns.
- RF current can easily ionize air, creating a conductive path through it. This property is exploited by "high frequency" units used in electric arc welding, which use currents at higher frequencies than power distribution uses.
- Another property is the ability to appear to flow through paths that contain insulating material, like the dielectric insulator of a capacitor. This is because capacitive reactance in a circuit decreases with increasing frequency.
- In contrast, RF current can be blocked by a coil of wire, or even a single turn or bend in a wire. This is because the inductive reactance of a circuit increases with increasing frequency.
- When conducted by an ordinary electric cable, RF current has a tendency to reflect from discontinuities in the cable, such as connectors, and travel back down the cable toward the source, causing a condition called standing waves. RF current may be carried efficiently over transmission lines such as coaxial cables.
Frequency bands
The radio spectrum of frequencies is divided into bands with conventional names designated by the International Telecommunication Union (ITU):
Frequency
rangeWavelength
rangeITU designation IEEE bands[6] Full name Abbreviation[7] Below 3 Hz >105 km — 3–30 Hz 105–104 km Extremely low frequency ELF — 30–300 Hz 104–103 km Super low frequency SLF — 300–3000 Hz 103–100 km Ultra low frequency ULF — 3–30 kHz 100–10 km Very low frequency VLF — 30–300 kHz 10–1 km Low frequency LF — 300 kHz – 3 MHz 1 km – 100 m Medium frequency MF — 3–30 MHz 100–10 m High frequency HF HF 30–300 MHz 10–1 m Very high frequency VHF VHF 300 MHz – 3 GHz 1 m – 100 mm Ultra high frequency UHF UHF, L, S 3–30 GHz 100–10 mm Super high frequency SHF S, C, X, Ku, K, Ka 30–300 GHz 10–1 mm Extremely high frequency EHF Ka, V, W, mm 300 GHz – 3 THz 1 mm – 0.1 mm Tremendously high frequency THF —
Frequencies of 1 GHz and above are conventionally called microwave,[8] while frequencies of 30 GHz and above are designated millimeter wave. More detailed band designations are given by the standard IEEE letter- band frequency designations[6] and the EU/NATO frequency designations.[9]
Applications
Communications
Radio frequencies are used in communication devices such as transmitters, receivers, computers, televisions, and mobile phones, to name a few.[1] Radio frequencies are also applied in carrier current systems including telephony and control circuits. The MOS integrated circuit is the technology behind the current proliferation of radio frequency wireless telecommunications devices such as cellphones.
Medicine
Medical applications of radio frequency (RF) energy, in the form of electromagnetic waves (radio waves) or electrical currents, have existed for over 125 years,[10] and now include diathermy, hyperthermy treatment of cancer, electrosurgery scalpels used to cut and cauterize in operations, and radiofrequency ablation.[11] Magnetic resonance imaging (MRI) uses radio frequency fields to generate images of the human body.[12]
Measurement
Test apparatus for radio frequencies can include standard instruments at the lower end of the range, but at higher frequencies, the test equipment becomes more specialized.[13][citation needed] [14]
Mechanical oscillations
While RF usually refers to electrical oscillations, mechanical RF systems are not uncommon: see mechanical filter and RF MEMS.
See also
- Amplitude modulation (AM)
- Bandwidth (signal processing)
- Electromagnetic interference
- Electromagnetic radiation
- Electromagnetic spectrum
- EMF measurement
- Frequency allocation
- Frequency modulation (FM)
- Plastic welding
- Pulsed electromagnetic field therapy
- Spectrum management
References
electric shock pain.
- Siamack Ghadimi (2021), Measure a DUT's input power using a directional coupler and power sensor, EDN
External links
- Analog, RF and EMC Considerations in Printed Wiring Board (PWB) Design
- Definition of frequency bands (VLF, ELF … etc.) IK1QFK Home Page (vlf.it)
- Radio, light, and sound waves, conversion between wavelength and frequency Archived 2012-03-11 at the Wayback Machine
- RF Terms Glossary Archived 2008-08-20 at the Wayback Machine
https://en.wikipedia.org/wiki/Radio_frequency
A tape drive is a data storage device that reads and writes data on a magnetic tape. Magnetic-tape data storage is typically used for offline, archival data storage. Tape media generally has a favorable unit cost and a long archival stability.
A tape drive provides sequential access storage, unlike a hard disk drive, which provides direct access storage. A disk drive can move to any position on the disk in a few milliseconds, but a tape drive must physically wind tape between reels to read any one particular piece of data. As a result, tape drives have very large average access times. However, tape drives can stream data very quickly off a tape when the required position has been reached. For example, as of 2017 Linear Tape-Open (LTO) supports continuous data transfer rates of up to 360 MB/s, a rate comparable to hard disk drives.
Design
Magnetic-tape drives with capacities of less than one megabyte were first used for data storage on mainframe computers in the 1950s. As of 2018, capacities of 20 terabytes or higher of uncompressed data per cartridge were available.
In early computer systems, magnetic tape served as the main storage medium because although the drives were expensive, the tapes were inexpensive. Some computer systems ran the operating system on tape drives such as DECtape. DECtape had fixed-size indexed blocks that could be rewritten without disturbing other blocks, so DECtape could be used like a slow disk drive.
Data tape drives may use advanced data integrity techniques such as multilevel forward error correction, shingling, and linear serpentine layout for writing data to tape.
Tape drives can be connected to a computer with SCSI, Fibre Channel, SATA, USB, FireWire, FICON, or other interfaces.[a] Tape drives are used with autoloaders and tape libraries which automatically load, unload, and store multiple tapes, increasing the volume of data which can be stored without manual intervention.
In the early days of home computing, floppy and hard disk drives were very expensive. Many computers had an interface to store data via an audio tape recorder, typically on Compact Cassettes. Simple dedicated tape drives, such as the professional DECtape and the home ZX Microdrive and Rotronics Wafadrive, were also designed for inexpensive data storage. However, the drop in disk drive prices made such alternatives obsolete.
Data compression
As some data can be compressed to a smaller size than the original files, it has become commonplace when marketing tape drives to state the capacity with the assumption of a 2:1 compression ratio; thus a tape with a capacity of 80 GB would be sold as "80/160". The true storage capacity is also known as the native capacity or the raw capacity. The compression ratio actually achievable depends on the data being compressed. Some data has little redundancy; large video files, for example, already use compression and cannot be compressed further. A database with repetitive entries, on the other hand, may allow compression ratios better than 10:1.
Technical limitations
A disadvantageous effect termed shoe-shining occurs during read/write if the data transfer rate falls below the minimum threshold at which the tape drive heads were designed to transfer data to or from a continuously running tape. In this situation, the modern fast-running tape drive is unable to stop the tape instantly. Instead, the drive must decelerate and stop the tape, rewind it a short distance, restart it, position back to the point at which streaming stopped and then resume the operation. If the condition repeats, the resulting back-and-forth tape motion resembles that of shining shoes with a cloth. Shoe-shining decreases the attainable data transfer rate, drive and tape life, and tape capacity.
In early tape drives, non-continuous data transfer was normal and unavoidable. Computer processing power and available memory were usually insufficient to provide a constant stream, so tape drives were typically designed for start-stop operation. Early drives used very large spools, which necessarily had high inertia and did not start and stop moving easily. To provide high start, stop and seek performance, several feet of loose tape was played out and pulled by a suction fan down into two deep open channels on either side of the tape head and capstans. The long thin loops of tape hanging in these vacuum columns had far less inertia than the two reels and could be rapidly started, stopped and repositioned. The large reels would move as required to keep the slack tape in the vacuum columns.
Later, most tape drives of the 1980s introduced the use of an internal data buffer to somewhat reduce start-stop situations.[b] These drives are often referred to as tape streamers. The tape was stopped only when the buffer contained no data to be written, or when it was full of data during reading. As faster tape drives became available, despite being buffered, the drives started to suffer from the shoe-shining sequence of stop, rewind, start.
Some newer drives have several speeds and implement algorithms that dynamically match the tape speed level to the computer's data rate. Example speed levels could be 50 percent, 75 percent and 100 percent of full speed. A computer that streams data slower than the lowest speed level (e.g., at 49 percent) will still cause shoe-shining.
Media
Magnetic tape is commonly housed in a casing known as a cassette or cartridge—for example, the 4-track cartridge and the Compact Cassette. The cassette contains magnetic tape to provide different audio content using the same player. The outer shell, made of plastic, sometimes with metal plates and parts, permits ease of handling of the fragile tape, making it far more convenient and robust than having spools of exposed tape. Simple analog cassette audio tape recorders were commonly used for data storage and distribution on home computers at a time when floppy disk drives were very expensive. The Commodore Datasette was a dedicated data version using the same media.
History
Year | Manufacturer | Model | Capacity | Advancements |
---|---|---|---|---|
1951 | Remington Rand | UNISERVO | 224 KB | First computer tape drive, used 1⁄2" nickel-plated phosphor bronze tape |
1952 | IBM | 726 |
|
Use of plastic tape (cellulose acetate);
7-track tape that could store every 6-bit byte plus a parity bit |
1958 | IBM | 729[c] |
|
Separate read/write heads providing transparent read-after-write verification.[3] |
1964 | IBM | 2400 |
|
9-track tape that could store every 8-bit byte plus a parity bit |
1970s | IBM | 3400 |
|
Auto-loading tape reels and drives, avoiding manual tape threading
Group coded recording for error recovery |
1972 | 3M | Quarter Inch Cartridge (QIC-11) | 20 MB | Tape cassette (with two reels)
Linear serpentine recording[4] |
1974 | IBM | 3850 |
|
Tape cartridge (with single reel)
First tape library with robotic access[5] |
1975 | (various) | Kansas City standard |
|
Use of standard audio cassettes |
1977 | Commodore International | Commodore Datasette | 1978 KB |
|
1980 | Cipher | (F880?) |
|
RAM buffer to mask start-stop delays[6][7] |
1984 | IBM | 3480 | 200 MB | Internal takeup reel with automatic tape takeup mechanism.
Thin-film magnetoresistive (MR) head[8] |
1984 | DEC | TK50 | 94 MB | Digital Linear Tape (DLT) line of products[9] |
1986 | IBM | 3480 | 400 MB | Hardware data compression (IDRC algorithm[10]) |
1987 | Exabyte/Sony | EXB-8200 | 2.4 GB | First helical digital tape drive
Elimination of the capstan and pinch-roller system |
1993 | DEC | Tx87 |
|
Tape directory (database with first tapemark nr on each serpentine pass)[11] |
1995 | IBM | 3570 |
|
Servo tracks - factory-recorded tracks for precise head positioning (Time Based Servoing or TBS)[12]
Tape on unload rewound to the midpoint—halving access time (requires two-reel cassette)[13] |
1996 | HP | DDS3 | 12 GB | Partial-response maximum-likelihood (PRML) reading method—no fixed thresholds[14] |
1997 | IBM | VTS |
|
Virtual tape—disk cache that emulates tape drive[5] |
1999 | Exabyte | Mammoth-2 | 60 GB | Small cloth-covered wheel for cleaning tape heads. Inactive burnishing heads to prep the tape and deflect any debris or excess lubricant. Section of cleaning material at the beginning of each data tape. |
2000 | Quantum | Super DLT | 110 GB | Optical servo precisely positioning the heads[15] |
2000 | Linear Tape-Open | LTO-1 | 100 GB |
|
2003 | IBM | 3592 | 300 GB | Virtual backhitch |
2003 | Linear Tape-Open | LTO-2 | 200 GB |
|
2003 | Sony | SAIT-1 | 500 GB | Single-reel cartridge for helical recording |
2005 | IBM | TS1120 | 700 GB |
|
2005 | Linear Tape-Open | LTO-3 | 400 GB |
|
2006 | StorageTek | T10000 | 500 GB | Multiple head assemblies and servos per drive[16] |
2007 | Linear Tape-Open | LTO-4 | 800 GB |
|
2008 | IBM | TS1130 | 1 TB | Encryption capability integrated into the drive |
2008 | StorageTek | T10000B | 1 TB |
|
2010 | Linear Tape-Open | LTO-5 | 1.5 TB | Linear Tape File System (LTFS), which allows accessing files on tape in the file system directly (similar to disk filesystems) without an additional tape library database |
2011 | IBM | TS1140 | 4 TB | Linear Tape File System (LTFS) supported |
2011 | StorageTek | T10000C | 5 TB | Linear Tape File System (LTFS) supported |
2012 | Linear Tape-Open | LTO-6 | 2.5 TB |
|
2013 | StorageTek | T10000D | 8.5 TB |
|
2014 | IBM | TS1150 | 10 TB |
|
2015 | Linear Tape-Open | LTO-7 | 6 TB |
|
2017 | IBM | TS1155 | 15 TB |
|
2017 | Linear Tape-Open | LTO-8 | 12 TB |
|
2018 | IBM | TS1160 | 20 TB |
|
2021 | Linear Tape-Open | LTO-9 | 18 TB |
Capacity
Manufacturers often specify the capacity of tapes using data compression techniques; compressibility varies for different data (commonly 2:1 to 8:1), and the specified capacity may not be attained for some types of real data. As of 2014, tape drives capable of higher capacity were still being developed.
In 2011, Fujifilm and IBM announced that they had been able to record 29.5 billion bits per square inch with magnetic-tape media developed using the BaFe particles and nanotechnologies, allowing drives with true (uncompressed) tape capacity of 35 TB.[17][18] The technology was not expected to be commercially available for at least a decade.
In 2014, Sony and IBM announced that they had been able to record 148 billion bits per square inch with magnetic tape media developed using a new vacuum thin-film forming technology able to form extremely fine crystal particles, allowing true tape capacity of 185 TB.[19][20]
On December 15 2020, Fujifilm and IBM announced a SrFe technology able, in theory, to store 580 TB per tape cartridge. [21]
Notes
- As of January 2009, the Computer History Museum in Mountain View, California has working IBM 729 tape drives attached to its working IBM 1401 system.[2]
References
https://en.wikipedia.org/wiki/Tape_drive
A barcode or bar code is a method of representing data in a visual, machine-readable form. Initially, barcodes represented data by varying the widths, spacings and sizes of parallel lines. These barcodes, now commonly referred to as linear or one-dimensional (1D), can be scanned by special optical scanners, called barcode readers, of which there are several types. Later, two-dimensional (2D) variants were developed, using rectangles, dots, hexagons and other patterns, called matrix codes or 2D barcodes, although they do not use bars as such. 2D barcodes can be read using purpose-built 2D optical scanners, which exist in a few different forms. 2D barcodes can also be read by a digital camera connected to a microcomputer running software that takes a photographic image of the barcode and analyzes the image to deconstruct and decode the 2D barcode. A mobile device with a built-in camera, such as smartphone, can function as the latter type of 2D barcode reader using specialized application software (The same sort of mobile device could also read 1D barcodes, depending on the application software).
The barcode was invented by Norman Joseph Woodland and Bernard Silver and patented in the US in 1952.[1] The invention was based on Morse code[2] that was extended to thin and thick bars. However, it took over twenty years before this invention became commercially successful. UK magazine Modern Railways December 1962 pages 387–389 record how British Railways had already perfected a barcode-reading system capable of correctly reading rolling stock travelling at 100 mph (160 km/h) with no mistakes. An early use of one type of barcode in an industrial context was sponsored by the Association of American Railroads in the late 1960s. Developed by General Telephone and Electronics (GTE) and called KarTrak ACI (Automatic Car Identification), this scheme involved placing colored stripes in various combinations on steel plates which were affixed to the sides of railroad rolling stock. Two plates were used per car, one on each side, with the arrangement of the colored stripes encoding information such as ownership, type of equipment, and identification number.[3] The plates were read by a trackside scanner located, for instance, at the entrance to a classification yard, while the car was moving past.[4] The project was abandoned after about ten years because the system proved unreliable after long-term use.[3]
Barcodes became commercially successful when they were used to automate supermarket checkout systems, a task for which they have become almost universal. The Uniform Grocery Product Code Council had chosen, in 1973, the barcode design developed by George Laurer. Laurer's barcode, with vertical bars, printed better than the circular barcode developed by Woodland and Silver.[5] Their use has spread to many other tasks that are generically referred to as automatic identification and data capture (AIDC). The first successful system using barcodes was in the UK supermarket group Sainsbury's in 1972 using shelf-mounted barcodes [6] which were developed by Plessey.[6] In June 1974, Marsh supermarket in Troy, Ohio used a scanner made by Photographic Sciences Corporation to scan the Universal Product Code (UPC) barcode on a pack of Wrigley's chewing gum.[7][5] QR codes, a specific type of 2D barcode, have recently become very popular due to the growth in smartphone ownership.[8]
Other systems have made inroads in the AIDC market, but the simplicity, universality and low cost of barcodes has limited the role of these other systems, particularly before technologies such as radio-frequency identification (RFID) became available after 1995.
History
This article duplicates the scope of other articles, specifically Universal Product Code#History. (December 2013) |
In 1948 Bernard Silver, a graduate student at Drexel Institute of Technology in Philadelphia, Pennsylvania, US overheard the president of the local food chain, Food Fair, asking one of the deans to research a system to automatically read product information during checkout.[9] Silver told his friend Norman Joseph Woodland about the request, and they started working on a variety of systems. Their first working system used ultraviolet ink, but the ink faded too easily and was expensive.[10]
Convinced that the system was workable with further development, Woodland left Drexel, moved into his father's apartment in Florida, and continued working on the system. His next inspiration came from Morse code, and he formed his first barcode from sand on the beach. "I just extended the dots and dashes downwards and made narrow lines and wide lines out of them."[10] To read them, he adapted technology from optical soundtracks in movies, using a 500-watt incandescent light bulb shining through the paper onto an RCA935 photomultiplier tube (from a movie projector) on the far side. He later decided that the system would work better if it were printed as a circle instead of a line, allowing it to be scanned in any direction.
On 20 October 1949, Woodland and Silver filed a patent application for "Classifying Apparatus and Method", in which they described both the linear and bull's eye printing patterns, as well as the mechanical and electronic systems needed to read the code. The patent was issued on 7 October 1952 as US Patent 2,612,994.[1] In 1951, Woodland moved to IBM and continually tried to interest IBM in developing the system. The company eventually commissioned a report on the idea, which concluded that it was both feasible and interesting, but that processing the resulting information would require equipment that was some time off in the future.
IBM offered to buy the patent, but the offer was not accepted. Philco purchased the patent in 1962 and then sold it to RCA sometime later.[10]
Collins at Sylvania
During his time as an undergraduate, David Jarrett Collins worked at the Pennsylvania Railroad and became aware of the need to automatically identify railroad cars. Immediately after receiving his master's degree from MIT in 1959, he started work at GTE Sylvania and began addressing the problem. He developed a system called KarTrak using blue, white and red reflective stripes attached to the side of the cars, encoding a four-digit company identifier and a six-digit car number.[10] Light reflected off the colored stripes was read by photomultiplier vacuum tubes.[11]
The Boston and Maine Railroad tested the KarTrak system on their gravel cars in 1961. The tests continued until 1967, when the Association of American Railroads (AAR) selected it as a standard, Automatic Car Identification, across the entire North American fleet. The installations began on 10 October 1967. However, the economic downturn and rash of bankruptcies in the industry in the early 1970s greatly slowed the rollout, and it was not until 1974 that 95% of the fleet was labeled. To add to its woes, the system was found to be easily fooled by dirt in certain applications, which greatly affected accuracy. The AAR abandoned the system in the late 1970s, and it was not until the mid-1980s that they introduced a similar system, this time based on radio tags.[12]
The railway project had failed, but a toll bridge in New Jersey requested a similar system so that it could quickly scan for cars that had purchased a monthly pass. Then the U.S. Post Office requested a system to track trucks entering and leaving their facilities. These applications required special retroreflector labels. Finally, Kal Kan asked the Sylvania team for a simpler (and cheaper) version which they could put on cases of pet food for inventory control.
Computer Identics Corporation
In 1967, with the railway system maturing, Collins went to management looking for funding for a project to develop a black-and-white version of the code for other industries. They declined, saying that the railway project was large enough, and they saw no need to branch out so quickly.
Collins then quit Sylvania and formed the Computer Identics Corporation.[10] As its first innovations, Computer Identics moved from using incandescent light bulbs in its systems, replacing them with helium–neon lasers, and incorporated a mirror as well, making it capable of locating a barcode up to a meter (3 feet) in front of the scanner. This made the entire process much simpler and more reliable, and typically enabled these devices to deal with damaged labels, as well, by recognizing and reading the intact portions.
Computer Identics Corporation installed one of its first two scanning systems in the spring of 1969 at a General Motors (Buick) factory in Flint, Michigan.[10] The system was used to identify a dozen types of transmissions moving on an overhead conveyor from production to shipping. The other scanning system was installed at General Trading Company's distribution center in Carlstadt, New Jersey to direct shipments to the proper loading bay.
Universal Product Code
In 1966, the National Association of Food Chains (NAFC) held a meeting on the idea of automated checkout systems. RCA, who had purchased the rights to the original Woodland patent, attended the meeting and initiated an internal project to develop a system based on the bullseye code. The Kroger grocery chain volunteered to test it.
In the mid-1970s, the NAFC established the Ad-Hoc Committee for U.S. Supermarkets on a Uniform Grocery-Product Code to set guidelines for barcode development. In addition, it created a symbol-selection subcommittee to help standardize the approach. In cooperation with consulting firm, McKinsey & Co., they developed a standardized 11-digit code for identifying products. The committee then sent out a contract tender to develop a barcode system to print and read the code. The request went to Singer, National Cash Register (NCR), Litton Industries, RCA, Pitney-Bowes, IBM and many others.[13] A wide variety of barcode approaches was studied, including linear codes, RCA's bullseye concentric circle code, starburst patterns and others.
In the spring of 1971, RCA demonstrated their bullseye code at another industry meeting. IBM executives at the meeting noticed the crowds at the RCA booth and immediately developed their own system. IBM marketing specialist Alec Jablonover remembered that the company still employed Woodland, and he established a new facility in Raleigh-Durham Research Triangle Park to lead development.
In July 1972, RCA began an 18-month test in a Kroger store in Cincinnati. Barcodes were printed on small pieces of adhesive paper, and attached by hand by store employees when they were adding price tags. The code proved to have a serious problem; the printers would sometimes smear ink, rendering the code unreadable in most orientations. However, a linear code, like the one being developed by Woodland at IBM, was printed in the direction of the stripes, so extra ink would simply make the code "taller" while remaining readable. So on 3 April 1973, the IBM UPC was selected as the NAFC standard. IBM had designed five versions of UPC symbology for future industry requirements: UPC A, B, C, D, and E.[14]
NCR installed a testbed system at Marsh's Supermarket in Troy, Ohio, near the factory that was producing the equipment. On 26 June 1974, Clyde Dawson pulled a 10-pack of Wrigley's Juicy Fruit gum out of his basket and it was scanned by Sharon Buchanan at 8:01 am. The pack of gum and the receipt are now on display in the Smithsonian Institution. It was the first commercial appearance of the UPC.[15]
In 1971, an IBM team was assembled for an intensive planning session, threshing out, 12 to 18 hours a day, how the technology would be deployed and operate cohesively across the system, and scheduling a roll-out plan. By 1973, the team were meeting with grocery manufacturers to introduce the symbol that would need to be printed on the packaging or labels of all of their products. There were no cost savings for a grocery to use it, unless at least 70% of the grocery's products had the barcode printed on the product by the manufacturer. IBM projected that 75% would be needed in 1975. Yet, although this was achieved, there were still scanning machines in fewer than 200 grocery stores by 1977.[16]
Economic studies conducted for the grocery industry committee projected over $40 million in savings to the industry from scanning by the mid-1970s. Those numbers were not achieved in that time-frame and some predicted the demise of barcode scanning. The usefulness of the barcode required the adoption of expensive scanners by a critical mass of retailers while manufacturers simultaneously adopted barcode labels. Neither wanted to move first and results were not promising for the first couple of years, with Business Week proclaiming "The Supermarket Scanner That Failed" in a 1976 article.[15][17]
On the other hand, experience with barcode scanning in those stores revealed additional benefits. The detailed sales information acquired by the new systems allowed greater responsiveness to customer habits, needs and preferences. This was reflected in the fact that about 5 weeks after installing barcode scanners, sales in grocery stores typically started climbing and eventually leveled off at a 10–12% increase in sales that never dropped off. There was also a 1–2% decrease in operating cost for those stores, and this enabled them to lower prices and thereby to increase market share. It was shown in the field that the return on investment for a barcode scanner was 41.5%. By 1980, 8,000 stores per year were converting.[16]
Sims Supermarkets were the first location in Australia to use barcodes, starting in 1979.[18]
Industrial adoption
In 1981, the United States Department of Defense adopted the use of Code 39 for marking all products sold to the United States military. This system, Logistics Applications of Automated Marking and Reading Symbols (LOGMARS), is still used by DoD and is widely viewed as the catalyst for widespread adoption of barcoding in industrial uses.[19]
Use
Barcodes are widely used around the world in many contexts. In stores, UPC barcodes are pre-printed on most items other than fresh produce from a grocery store. This speeds up processing at check-outs and helps track items and also reduces instances of shoplifting involving price tag swapping, although shoplifters can now print their own barcodes.[20] Barcodes that encode a book's ISBN are also widely pre-printed on books, journals and other printed materials. In addition, retail chain membership cards use barcodes to identify customers, allowing for customized marketing and greater understanding of individual consumer shopping patterns. At the point of sale, shoppers can get product discounts or special marketing offers through the address or e-mail address provided at registration.
Barcodes are widely used in the healthcare and hospital settings, ranging from patient identification (to access patient data, including medical history, drug allergies, etc.) to creating SOAP Notes[21] with barcodes to medication management. They are also used to facilitate the separation and indexing of documents that have been imaged in batch scanning applications, track the organization of species in biology,[22] and integrate with in-motion checkweighers to identify the item being weighed in a conveyor line for data collection.
They can also be used to keep track of objects and people; they are used to keep track of rental cars, airline luggage, nuclear waste, registered mail, express mail and parcels. Barcoded tickets (which may be printed by the customer on their home printer, or stored on their mobile device) allow the holder to enter sports arenas, cinemas, theatres, fairgrounds, and transportation, and are used to record the arrival and departure of vehicles from rental facilities etc. This can allow proprietors to identify duplicate or fraudulent tickets more easily. Barcodes are widely used in shop floor control applications software where employees can scan work orders and track the time spent on a job.
Barcodes are also used in some kinds of non-contact 1D and 2D position sensors. A series of barcodes are used in some kinds of absolute 1D linear encoder. The barcodes are packed close enough together that the reader always has one or two barcodes in its field of view. As a kind of fiducial marker, the relative position of the barcode in the field of view of the reader gives incremental precise positioning, in some cases with sub-pixel resolution. The data decoded from the barcode gives the absolute coarse position. An "address carpet", used in digital paper, such as Howell's binary pattern and the Anoto dot pattern, is a 2D barcode designed so that a reader, even though only a tiny portion of the complete carpet is in the field of view of the reader, can find its absolute X,Y position and rotation in the carpet.[23][24]
2D barcodes can embed a hyperlink to a web page. A mobile device with a built-in camera might be used to read the pattern and browse the linked website, which can help a shopper find the best price for an item in the vicinity. Since 2005, airlines use an IATA-standard 2D barcode on boarding passes (Bar Coded Boarding Pass (BCBP)), and since 2008 2D barcodes sent to mobile phones enable electronic boarding passes.[25]
Some applications for barcodes have fallen out of use. In the 1970s and 1980s, software source code was occasionally encoded in a barcode and printed on paper (Cauzin Softstrip and Paperbyte[26] are barcode symbologies specifically designed for this application), and the 1991 Barcode Battler computer game system used any standard barcode to generate combat statistics.
Artists have used barcodes in art, such as Scott Blake's Barcode Jesus, as part of the post-modernism movement.
Symbologies
The mapping between messages and barcodes is called a symbology. The specification of a symbology includes the encoding of the message into bars and spaces, any required start and stop markers, the size of the quiet zone required to be before and after the barcode, and the computation of a checksum.
Linear symbologies can be classified mainly by two properties:
- Continuous vs. discrete
- Characters in discrete symbologies are composed of n bars and n − 1 spaces. There is an additional space between characters, but it does not convey information, and may have any width as long as it is not confused with the end of the code.
- Characters in continuous symbologies are composed of n bars and n spaces, and usually abut, with one character ending with a space and the next beginning with a bar, or vice versa. A special end pattern that has bars on both ends is required to end the code.
- Two-width vs. many-width
- A two-width, also called a binary bar code, contains bars and spaces of two widths, "wide" and "narrow". The precise width of the wide bars and spaces is not critical; typically, it is permitted to be anywhere between 2 and 3 times the width of the narrow equivalents.
- Some other symbologies use bars of two different heights (POSTNET), or the presence or absence of bars (CPC Binary Barcode). These are normally also considered binary bar codes.
- Bars and spaces in many-width symbologies are all multiples of a basic width called the module; most such codes use four widths of 1, 2, 3 and 4 modules.
Some symbologies use interleaving. The first character is encoded using black bars of varying width. The second character is then encoded by varying the width of the white spaces between these bars. Thus, characters are encoded in pairs over the same section of the barcode. Interleaved 2 of 5 is an example of this.
Stacked symbologies repeat a given linear symbology vertically.
The most common among the many 2D symbologies are matrix codes, which feature square or dot-shaped modules arranged on a grid pattern. 2D symbologies also come in circular and other patterns and may employ steganography, hiding modules within an image (for example, DataGlyphs).
Linear symbologies are optimized for laser scanners, which sweep a light beam across the barcode in a straight line, reading a slice of the barcode light-dark patterns. Scanning at an angle makes the modules appear wider, but does not change the width ratios. Stacked symbologies are also optimized for laser scanning, with the laser making multiple passes across the barcode.
In the 1990s development of charge-coupled device (CCD) imagers to read barcodes was pioneered by Welch Allyn. Imaging does not require moving parts, as a laser scanner does. In 2007, linear imaging had begun to supplant laser scanning as the preferred scan engine for its performance and durability.
2D symbologies cannot be read by a laser, as there is typically no sweep pattern that can encompass the entire symbol. They must be scanned by an image-based scanner employing a CCD or other digital camera sensor technology.
Barcode readers
The earliest, and still[when?] the cheapest, barcode scanners are built from a fixed light and a single photosensor that is manually moved across the barcode. Barcode scanners can be classified into three categories based on their connection to the computer. The older type is the RS-232 barcode scanner. This type requires special programming for transferring the input data to the application program. Keyboard interface scanners connect to a computer using a PS/2 or AT keyboard–compatible adaptor cable (a "keyboard wedge"). The barcode's data is sent to the computer as if it had been typed on the keyboard.
Like the keyboard interface scanner, USB scanners do not need custom code for transferring input data to the application program. On PCs running Windows the human interface device emulates the data merging action of a hardware "keyboard wedge", and the scanner automatically behaves like an additional keyboard.
Most modern smartphones are able to decode barcode using their built-in camera. Google's mobile Android operating system can use their own Google Lens application to scan QR codes, or third-party apps like Barcode Scanner to read both one-dimensional barcodes and QR codes. Nokia's Symbian operating system featured a barcode scanner,[27] while mbarcode[28] is a QR code reader for the Maemo operating system. In Apple iOS 11, the native camera app can decode QR codes and can link to URLs, join wireless networks, or perform other operations depending on the QR Code contents.[29] Other paid and free apps are available with scanning capabilities for other symbologies or for earlier iOS versions.[30] With BlackBerry devices, the App World application can natively scan barcodes and load any recognized Web URLs on the device's Web browser. Windows Phone 7.5 is able to scan barcodes through the Bing search app. However, these devices are not designed specifically for the capturing of barcodes. As a result, they do not decode nearly as quickly or accurately as a dedicated barcode scanner or portable data terminal.[citation needed]
Quality control and verification
It is common for producers and users of bar codes to have a quality management system which includes verification and validation of bar codes.[31] Barcode verification examines scanability and the quality of the barcode in comparison to industry standards and specifications.[32] Barcode verifiers are primarily used by businesses that print and use barcodes. Any trading partner in the supply chain can test barcode quality. It is important to verify a barcode to ensure that any reader in the supply chain can successfully interpret a barcode with a low error rate. Retailers levy large penalties for non-compliant barcodes. These chargebacks can reduce a manufacturer's revenue by 2% to 10%.[33]
A barcode verifier works the way a reader does, but instead of simply decoding a barcode, a verifier performs a series of tests. For linear barcodes these tests are:
- Edge contrast (EC)[34]
- The difference between the space reflectance (Rs) and adjoining bar reflectance (Rb). EC=Rs-Rb
- Minimum bar reflectance (Rb)[34]
- The smallest reflectance value in a bar.
- Minimum space reflectance (Rs)[34]
- The smallest reflectance value in a space.
- Symbol contrast (SC)[34]
- Symbol Contrast is the difference in reflectance values of the lightest space (including the quiet zone) and the darkest bar of the symbol. The greater the difference, the higher the grade. The parameter is graded as either A, B, C, D, or F. SC=Rmax-Rmin
- Minimum edge contrast (ECmin)[34]
- The difference between the space reflectance (Rs) and adjoining bar reflectance (Rb). EC=Rs-Rb
- Modulation (MOD)[34]
- The parameter is graded either A, B, C, D, or F. This grade is based on the relationship between minimum edge contrast (ECmin) and symbol contrast (SC). MOD=ECmin/SC The greater the difference between minimum edge contrast and symbol contrast, the lower the grade. Scanners and verifiers perceive the narrower bars and spaces to have less intensity than wider bars and spaces; the comparison of the lesser intensity of narrow elements to the wide elements is called modulation. This condition is affected by aperture size.
- Inter-character gap[34]
- In discrete barcodes, the space that disconnects the two contiguous characters. When present, inter-character gaps are considered spaces (elements) for purposes of edge determination and reflectance parameter grades.
- Defects
- Decode[34]
- Extracting the information which has been encoded in a bar code symbol.
- Decodability[34]
- Can be graded as A, B, C, D, or F. The Decodability grade indicates the amount of error in the width of the most deviant element in the symbol. The less deviation in the symbology, the higher the grade. Decodability is a measure of print accuracy using the symbology reference decode algorithm.
2D matrix symbols look at the parameters:
- Symbol contrast[34]
- Modulation[34]
- Decode[34]
- Unused error correction
- Fixed (finder) pattern damage
- Grid non-uniformity
- Axial non-uniformity[35]
Depending on the parameter, each ANSI test is graded from 0.0 to 4.0 (F to A), or given a pass or fail mark. Each grade is determined by analyzing the scan reflectance profile (SRP), an analog graph of a single scan line across the entire symbol. The lowest of the 8 grades is the scan grade, and the overall ISO symbol grade is the average of the individual scan grades. For most applications a 2.5 (C) is the minimal acceptable symbol grade.[36]
Compared with a reader, a verifier measures a barcode's optical characteristics to international and industry standards. The measurement must be repeatable and consistent. Doing so requires constant conditions such as distance, illumination angle, sensor angle and verifier aperture. Based on the verification results, the production process can be adjusted to print higher quality barcodes that will scan down the supply chain.
Bar code validation may include evaluations after use (and abuse) testing such as sunlight, abrasion, impact, moisture, etc.[37]
Barcode verifier standards
Barcode verifier standards are defined by the International Organization for Standardization (ISO), in ISO/IEC 15426-1 (linear) or ISO/IEC 15426-2 (2D).[citation needed] The current international barcode quality specification is ISO/IEC 15416 (linear) and ISO/IEC 15415 (2D).[citation needed] The European Standard EN 1635 has been withdrawn and replaced by ISO/IEC 15416. The original U.S. barcode quality specification was ANSI X3.182. (UPCs used in the US – ANSI/UCC5).[citation needed] As of 2011 the ISO workgroup JTC1 SC31 was developing a Direct Part Marking (DPM) quality standard: ISO/IEC TR 29158.[38]
Benefits
In point-of-sale management, barcode systems can provide detailed up-to-date information on the business, accelerating decisions and with more confidence. For example:
- Fast-selling items can be identified quickly and automatically reordered.
- Slow-selling items can be identified, preventing inventory build-up.
- The effects of merchandising changes can be monitored, allowing fast-moving, more profitable items to occupy the best space.
- Historical data can be used to predict seasonal fluctuations very accurately.
- Items may be repriced on the shelf to reflect both sale prices and price increases.
- This technology also enables the profiling of individual consumers, typically through a voluntary registration of discount cards. While pitched as a benefit to the consumer, this practice is considered to be potentially dangerous by privacy advocates.[which?]
Besides sales and inventory tracking, barcodes are very useful in logistics and supply chain management.
- When a manufacturer packs a box for shipment, a Unique Identifying Number (UID) can be assigned to the box.
- A database can link the UID to relevant information about the box; such as order number, items packed, quantity packed, destination, etc.
- The information can be transmitted through a communication system such as Electronic Data Interchange (EDI) so the retailer has the information about a shipment before it arrives.
- Shipments that are sent to a Distribution Center (DC) are tracked before forwarding. When the shipment reaches its final destination, the UID gets scanned, so the store knows the shipment's source, contents, and cost.
Barcode scanners are relatively low cost and extremely accurate compared to key-entry, with only about 1 substitution error in 15,000 to 36 trillion characters entered.[39][unreliable source?] The exact error rate depends on the type of barcode.
Types of barcodes
Linear barcodes
A first generation, "one dimensional" barcode that is made up of lines and spaces of various widths or sizes that create specific patterns.
Example | Symbology | Continuous or discrete | Bar type | Uses |
---|---|---|---|---|
Australia Post barcode | Discrete | 4 bar heights | An Australia Post barcode as used on a business reply paid envelope and applied by automated sorting machines to other mail when initially processed in fluorescent ink . | |
Codabar | Discrete | Two | Old format used in libraries and blood banks and on airbills (out of date, but still widely used in libraries) | |
Code 25 – Non-interleaved 2 of 5 | Continuous | Two | Industrial | |
Code 25 – Interleaved 2 of 5 | Continuous | Two | Wholesale, libraries International standard ISO/IEC 16390 | |
Code 11 | Discrete | Two | Telephones (out of date) | |
Farmacode or Code 32 | Discrete | Two | Italian pharmacode – use Code 39 (no international standard available) | |
Code 39 | Discrete | Two | Various – international standard ISO/IEC 16388 | |
Code 49 | Continuous | Many | Various | |
Code 93 | Continuous | Many | Various | |
Code 128 | Continuous | Many | Various – International Standard ISO/IEC 15417 | |
CPC Binary | Discrete | Two |
| |
DX film edge barcode | Neither | Tall/short | Color print film | |
EAN 2 | Continuous | Many | Addon code (magazines), GS1-approved – not an own symbology – to be used only with an EAN/UPC according to ISO/IEC 15420 | |
EAN 5 | Continuous | Many | Addon code (books), GS1-approved – not an own symbology – to be used only with an EAN/UPC according to ISO/IEC 15420 | |
EAN-8, EAN-13 | Continuous | Many | Worldwide retail, GS1-approved – International Standard ISO/IEC 15420 | |
Facing Identification Mark | Discrete | Two | USPS business reply mail | |
GS1-128 (formerly named UCC/EAN-128), incorrectly referenced as EAN 128 and UCC 128 | Continuous | Many | Various, GS1-approved – just an application of the Code 128 (ISO/IEC 15417) using the ANS MH10.8.2 AI Datastructures. It is not a separate symbology. | |
GS1 DataBar, formerly Reduced Space Symbology (RSS) | Continuous | Many | Various, GS1-approved | |
Intelligent Mail barcode | Discrete | 4 bar heights | United States Postal Service, replaces both POSTNET and PLANET symbols (formerly named OneCode) | |
ITF-14 | Continuous | Two | Non-retail packaging levels, GS1-approved – is just an Interleaved 2/5 Code (ISO/IEC 16390) with a few additional specifications, according to the GS1 General Specifications | |
ITF-6 | Continuous | Two | Interleaved 2 of 5 barcode to encode an addon to ITF-14 and ITF-16 barcodes. The code is used to encode additional data such as items quantity or container weight | |
JAN | Continuous | Many | Used in Japan, similar to and compatible with EAN-13 (ISO/IEC 15420) | |
Japan Post barcode | Discrete | 4 bar heights | Japan Post | |
KarTrak ACI | Discrete | Coloured bars | Used in North America on railroad rolling equipment | |
MSI | Continuous | Two | Used for warehouse shelves and inventory | |
Pharmacode | Discrete | Two | Pharmaceutical packaging (no international standard available) | |
PLANET | Continuous | Tall/short | United States Postal Service (no international standard available) | |
Plessey | Continuous | Two | Catalogs, store shelves, inventory (no international standard available) | |
PostBar | Discrete | 4 bar heights | Canadian Post office | |
POSTNET | Discrete | Tall/short | United States Postal Service (no international standard available) | |
RM4SCC / KIX | Discrete | 4 bar heights | Royal Mail / PostNL | |
RM Mailmark C | Discrete | 4 bar heights | Royal Mail | |
RM Mailmark L | Discrete | 4 bar heights | Royal Mail | |
Spotify codes | Discrete | 23 bar heights | Spotify codes point to artists, songs, podcasts, playlists, and albums. The information is encoded in the height of the bars,[40] so as long as the bar heights are maintained, the code can be handwritten and can vary in color.[41] Patented under EP3444755. | |
Telepen | Continuous | Two | Libraries (UK) | |
Universal Product Code (UPC-A and UPC-E) | Continuous | Many | Worldwide retail, GS1-approved – International Standard ISO/IEC 15420 |
Matrix (2D) barcodes
A matrix code, also termed a 2D barcode (although not using bars as such) or simply a 2D code, is a two-dimensional way to represent information. It is similar to a linear (1-dimensional) barcode, but can represent more data per unit area.
Example | Name | Notes |
---|---|---|
AR Code | A type of marker used for placing content inside augmented reality applications. Some AR Codes can contain QR codes inside, so that AR content can be linked to.[42] See also ARTag. | |
Aztec Code | Designed by Andrew Longacre at Welch Allyn (now Honeywell Scanning and Mobility). Public domain. – International Standard: ISO/IEC 24778 | |
bCode | A barcode designed for the study of insect behavior.[43] Encodes an 11 bit identifier and 16 bits of read error detection and error correction information. Predominantly used for marking honey bees, but can also be applied to other animals. | |
BEEtag | A 25 bit (5x5) code matrix of black and white pixels that is unique to each tag surrounded by a white pixel border and a black pixel border. The 25-bit matrix consists of a 15-bit identity code, and a 10-bit error check.[44] It is designed to be a low-cost, image-based tracking system for the study of animal behavior and locomotion. | |
|
BeeTagg | A 2D barcode with honeycomb structures suitable for mobile tagging and was developed by the Swiss company connvision AG. |
|
Bokode | A type of data tag which holds much more information than a barcode over the same area. They were developed by a team led by Ramesh Raskar at the MIT Media Lab. The bokode pattern is a tiled series of Data Matrix codes. |
Boxing | A high-capacity 2D barcode is used on piqlFilm by Piql AS[45] | |
Code 1 | Public domain. Code 1 is currently used in the health care industry for medicine labels and the recycling industry to encode container content for sorting.[46] | |
Code 16K | The Code 16K (1988) is a multi-row bar code developed by Ted Williams at Laserlight Systems (USA) in 1992. In the US and France, the code is used in the electronics industry to identify chips and printed circuit boards. Medical applications in the USA are well known. Williams also developed Code 128, and the structure of 16K is based on Code 128. Not coincidentally, 128 squared happened to equal 16,000 or 16K for short. Code 16K resolved an inherent problem with Code 49. Code 49's structure requires a large amount of memory for encoding and decoding tables and algorithms. 16K is a stacked symbology.[47][48] | |
ColorCode | ColorZip[49] developed colour barcodes that can be read by camera phones from TV screens; mainly used in Korea.[50] | |
Color Construct Code | Color Construct Code is one of the few barcode symbologies designed to take advantage of multiple colors.[51][52] | |
Cronto Visual Cryptogram | The Cronto Visual Cryptogram (also called photoTAN) is a specialized color barcode, spun out from research at the University of Cambridge by Igor Drokov, Steven Murdoch, and Elena Punskaya.[53] It is used for transaction signing in e-banking; the barcode contains encrypted transaction data which is then used as a challenge to compute a transaction authentication number using a security token.[54] | |
CyberCode | From Sony. | |
d-touch | readable when printed on deformable gloves and stretched and distorted[55][56] | |
DataGlyphs | From Palo Alto Research Center (also termed Xerox PARC).[57]
Patented.[58] DataGlyphs can be embedded into a half-tone image or background shading pattern in a way that is almost perceptually invisible, similar to steganography.[59][60] | |
Data Matrix | From Microscan Systems, formerly RVSI Acuity CiMatrix/Siemens. Public domain. Increasingly used throughout the United States. Single segment Data Matrix is also termed Semacode. – International Standard: ISO/IEC 16022. | |
Datastrip Code | From Datastrip, Inc. | |
|
Digimarc Barcode | The Digimarc Barcode is a unique identifier, or code, based on imperceptible patterns that can be applied to marketing materials, including packaging, displays, ads in magazines, circulars, radio and television[61] |
digital paper | patterned paper used in conjunction with a digital pen to create handwritten digital documents. The printed dot pattern uniquely identifies the position coordinates on the paper. | |
Dolby Digital | Digital sound code for printing on cinematic film between the threading holes | |
DotCode | Standardized as AIM Dotcode Rev 3.0. Public domain. Used to track individual cigarette and pharmaceutical packages. | |
Dot Code A | Also known as Philips Dot Code.[62] Patented in 1988.[63] | |
|
DWCode | Introduced by GS1 US and GS1 Germany, the DWCode is a unique, imperceptible data carrier that is repeated across the entire graphics design of a package[64] |
EZcode | Designed for decoding by cameraphones;[65] from ScanLife.[66] | |
Han Xin Barcode | Barcode designed to encode Chinese characters introduced by Association for Automatic Identification and Mobility in 2011. | |
High Capacity Color Barcode | HCCB was developed by Microsoft; licensed by ISAN-IA. | |
HueCode | From Robot Design Associates. Uses greyscale or colour.[67] | |
InterCode | From Iconlab, Inc. The standard 2D barcode in South Korea. All 3 South Korean mobile carriers put the scanner program of this code into their handsets to access mobile internet, as a default embedded program. | |
JAB Code | Just Another Bar Code is a colored 2D barcode. Square or rectangle. License free | |
MaxiCode | Used by United Parcel Service. Now public domain. | |
|
mCode | Designed by NextCode Corporation, specifically to work with mobile phones and mobile services.[68] It is implementing an independent error detection technique preventing false decoding, it uses a variable-size error correction polynomial, which depends on the exact size of the code.[69] |
MMCC | Designed to disseminate high capacity mobile phone content via existing colour print and electronic media, without the need for network connectivity | |
NexCode | NexCode is developed and patented by S5 Systems. | |
Nintendo e-Reader#Dot code | Developed by Olympus Corporation to store songs, images, and mini-games for Game Boy Advance on Pokémon trading cards. | |
PDF417 | Originated by Symbol Technologies. Public domain. – International standard: ISO/IEC 15438 | |
Qode | American proprietary and patented 2D barcode from NeoMedia Technologies, Inc.[66] | |
QR code | Initially developed, patented and owned by Denso Wave for automotive components management; they have chosen not to exercise their patent rights. Can encode Latin and Japanese Kanji and Kana characters, music, images, URLs, emails. De facto standard for Japanese cell phones. Used with BlackBerry Messenger to pick up contacts rather than using a PIN code. The most frequently used type of code to scan with smartphones, and one of the most widely used 2D barcodes.[70] Public Domain. – International Standard: ISO/IEC 18004 | |
Screencode | Developed and patented[71][72] by Hewlett-Packard Labs. A time-varying 2D pattern using to encode data via brightness fluctuations in an image, for the purpose of high bandwidth data transfer from computer displays to smartphones via smartphone camera input. Inventors Timothy Kindberg and John Collomosse, publicly disclosed at ACM HotMobile 2008.[73] | |
ShotCode | Circular barcodes for camera phones. Originally from High Energy Magic Ltd in name Spotcode. Before that most likely termed TRIPCode. | |
Snapcode, also called Boo-R code | used by Snapchat, Spectacles, etc. US9111164B1[74][75][76] | |
|
Snowflake Code | A proprietary code developed by Electronic Automation Ltd. in 1981. It is possible to encode more than 100 numeric digits in a space of only 5mm x 5mm. User selectable error correction allows up to 40% of the code to be destroyed and still remain readable. The code is used in the pharmaceutical industry and has an advantage that it can be applied to products and materials in a wide variety of ways, including printed labels, ink-jet printing, laser-etching, indenting or hole punching.[47][77][78] |
SPARQCode | QR code encoding standard from MSKYNET, Inc. | |
|
Trillcode | Designed for mobile phone scanning.[79] Developed by Lark Computer, a Romanian company.[69] |
VOICEYE | Developed and patented by VOICEYE, Inc. in South Korea, it aims to allow blind and visually impaired people to access printed information. It also claims to be the 2D barcode that has the world's largest storage capacity. |
Example images
"Wikipedia" encoded in Code 93
"*WIKI39*" encoded in Code 39
'Wikipedia" encoded in Code 128
PDF417 sample
Lorem ipsum boilerplate text as four segment Data Matrix 2D
"This is an example Aztec symbol for Wikipedia" encoded in Aztec Code
High Capacity Color Barcode of the URL for Wikipedia's article on High Capacity Color Barcode
"Wikipedia, The Free Encyclopedia" in several languages encoded in DataGlyphs
Two different 2D barcodes used in film: Dolby Digital between the sprocket holes with the "Double-D" logo in the middle, and Sony Dynamic Digital Sound in the blue area to the left of the sprocket holes
MaxiCode example. This encodes the string "Wikipedia, The Free Encyclopedia"
ShotCode sample
detail of Twibright Optar scan from laser printed paper, carrying 32 kbit/s Ogg Vorbis digital music (48 seconds per A4 page)
A KarTrak railroad Automatic Equipment Identification label on a caboose in Florida
In popular culture
In architecture, a building in Lingang New City by German architects Gerkan, Marg and Partners incorporates a barcode design,[81] as does a shopping mall called Shtrikh-kod (Russian for barcode) in Narodnaya ulitsa ("People's Street") in the Nevskiy district of St. Petersburg, Russia.[82]
In media, in 2011, the National Film Board of Canada and ARTE France launched a web documentary entitled Barcode.tv, which allows users to view films about everyday objects by scanning the product's barcode with their iPhone camera.[83][84]
In professional wrestling, the WWE stable D-Generation X incorporated a barcode into their entrance video, as well as on a T-shirt.[85][86]
In the TV series Dark Angel, the protagonist and the other transgenics in the Manticore X-series have barcodes on the back of their necks.
In video games, the protagonist of the Hitman video game series has a barcode tattoo on the back of his head; QR codes can also be scanned in a side mission in Watch Dogs. The 2018 videogame Judgment features QR Codes that protagonist Takayuki Yagami can photograph with his phone camera. These are mostly to unlock parts for Yagami's Drone.[87]
In the films Back to the Future Part II and The Handmaid's Tale, cars in the future are depicted with barcode licence plates.
In the Terminator films, Skynet burns barcodes onto the inside surface of the wrists of captive humans (in a similar location to the WW2 concentration camp tattoos) as a unique identifier.
In music, Dave Davies of The Kinks released a solo album in 1980, AFL1-3603, which featured a giant barcode on the front cover in place of the musician's head. The album's name was also the barcode number.
The April 1978 issue of Mad Magazine featured a giant barcode on the cover, with the blurb "[Mad] Hopes this issue jams up every computer in the country...for forcing us to deface our covers with this yecchy UPC symbol from now on!"
Interactive Textbooks were first published by Harcourt College Publishers to Expand Education Technology with Interactive Textbooks.[88]
Designed barcodes
Some brands integrate custom designs into barcodes (while keeping them readable) on their consumer products.
Hoaxes about barcodes
There was minor skepticism from conspiracy theorists, who considered barcodes to be an intrusive surveillance technology, and from some Christians, pioneered by a 1982 book The New Money System 666 by Mary Stewart Relfe, who thought the codes hid the number 666, representing the "Number of the Beast".[89] Old Believers, a separation of the Russian Orthodox Church, believe barcodes are the stamp of the Antichrist.[90] Television host Phil Donahue described barcodes as a "corporate plot against consumers".[91]
See also
References
- Bishop, Tricia (5 July 2004). "UPC bar code has been in use 30 years". SFgate.com. Archived from the original on 23 August 2004. Retrieved 22 December 2009.
Further reading
- Automating Management Information Systems: Barcode Engineering and Implementation – Harry E. Burke, Thomson Learning, ISBN 0-442-20712-3
- Automating Management Information Systems: Principles of Barcode Applications – Harry E. Burke, Thomson Learning, ISBN 0-442-20667-4
- The Bar Code Book – Roger C. Palmer, Helmers Publishing, ISBN 0-911261-09-5, 386 pages
- The Bar Code Manual – Eugene F. Brighan, Thompson Learning, ISBN 0-03-016173-8
- Handbook of Bar Coding Systems – Harry E. Burke, Van Nostrand Reinhold Company, ISBN 978-0-442-21430-2, 219 pages
- Information Technology for Retail:Automatic Identification & Data Capture Systems – Girdhar Joshi, Oxford University Press, ISBN 0-19-569796-0, 416 pages
- Lines of Communication – Craig K. Harmon, Helmers Publishing, ISBN 0-911261-07-9, 425 pages
- Punched Cards to Bar Codes – Benjamin Nelson, Helmers Publishing, ISBN 0-911261-12-5, 434 pages
- Revolution at the Checkout Counter: The Explosion of the Bar Code – Stephen A. Brown, Harvard University Press, ISBN 0-674-76720-9
- Reading Between The Lines – Craig K. Harmon and Russ Adams, Helmers Publishing, ISBN 0-911261-00-1, 297 pages
- The Black and White Solution: Bar Code and the IBM PC – Russ Adams and Joyce Lane, Helmers Publishing, ISBN 0-911261-01-X, 169 pages
- Sourcebook of Automatic Identification and Data Collection – Russ Adams, Van Nostrand Reinhold, ISBN 0-442-31850-2, 298 pages
- Inside Out: The Wonders of Modern Technology – Carol J. Amato, Smithmark Pub, ISBN 0831746572, 1993
External links
- https://en.wikipedia.org/wiki/Barcode
Return-to-zero (RZ or RTZ) describes a line code used in telecommunications signals in which the signal drops (returns) to zero between each pulse. This takes place even if a number of consecutive 0s or 1s occur in the signal. The signal is self-clocking. This means that a separate clock does not need to be sent alongside the signal, but suffers from using twice the bandwidth to achieve the same data-rate as compared to non-return-to-zero format.
The "zero" between each bit is a neutral or rest condition, such as a zero amplitude in pulse-amplitude modulation (PAM), zero phase shift in phase-shift keying (PSK), or mid-frequency in frequency-shift keying (FSK). That "zero" condition is typically halfway between the significant condition representing a 1 bit and the other significant condition representing a 0 bit.
Although return-to-zero (RZ) contains a provision for synchronization, it still has a DC component resulting in “baseline wander” during long strings of 0 or 1 bits, just like the line code non-return-to-zero.
Return-to-zero in optical communication
Return to zero, inverted
Return-to-zero, inverted (RZI) is a method of mapping for transmission. The two-level RZI signal has a pulse (shorter than a clock cycle) if the binary signal is 0, and no pulse if the binary signal is 1. It is used (with a pulse 3/16 of a bit long) by the IrDA serial infrared (SIR) physical layer specification. Required bandwidth for this kind of modulation is: BW = R(data rate).
Bipolar return-to-Zero (bipolar RZ)
For bipolar return-to-zero (bipolar RZ), a binary one is encoded as +V volts, a binary zero is encoded as −V volts, and 0 volt is used to provide padding and separation between bits.
Bipolar return-to-zero encoding is used by the ARINC 429 bus.
See also
Other line codes that have 3 states:
References
Further reading
- Savard, John J. G. (2018) [2006]. "Digital Magnetic Tape Recording". quadibloc. Archived from the original on 2018-07-02. Retrieved 2018-07-16.
https://en.wikipedia.org/wiki/Return-to-zero
In mathematics, an unary operation is an operation with only one operand, i.e. a single input.[1] This is in contrast to binary operations, which use two operands.[2] An example is any function f : A → A, where A is a set. The function f is a unary operation on A.
Common notations are prefix notation (e.g. ¬, −), postfix notation (e.g. factorial n!), functional notation (e.g. sin x or sin(x)), and superscripts (e.g. transpose AT). Other notations exist as well, for example, in the case of the square root, a horizontal bar extending the square root sign over the argument can indicate the extent of the argument.
https://en.wikipedia.org/wiki/Unary_operation
pedia
Computer memory and data storage types |
---|
|
Volatile |
---|
|
|
Non-volatile |
---|
|
|
|
|
|
|
|
Optical discs |
---|
|
|
|
|
An optical disc is a flat, usually [note 1] disc-shaped object that stores information in the form of physical variations on its surface that can be read with the aid of a beam of light. Optical discs can be reflective, where the light source and detector are on the same side of the disc, or transmissive, where light shines through the disc to the be detected on the other side.
Optical discs can store analog information (e.g. Laserdisc), digital information (e.g. DVD), or store both on the same disc (e.g. CD Video).
Their main uses are the distribution of media and data, and long-term archival.
Design and technology
The encoding material sits atop a thicker substrate (usually polycarbonate) that makes up the bulk of the disc and forms a dust defocusing layer. The encoding pattern follows a continuous, spiral path covering the entire disc surface and extending from the innermost track to the outermost track.
The data are stored on the disc with a laser or stamping machine, and can be accessed when the data path is illuminated with a laser diode in an optical disc drive that spins the disc at speeds of about 200 to 4,000 RPM or more, depending on the drive type, disc format, and the distance of the read head from the center of the disc (outer tracks are read at a higher data speed due to higher linear velocities at the same angular velocities).
Most optical discs exhibit a characteristic iridescence as a result of the diffraction grating formed by their grooves.[1][2] This side of the disc contains the actual data and is typically coated with a transparent material, usually lacquer.
The reverse side of an optical disc usually has a printed label, sometimes made of paper but often printed or stamped onto the disc itself. Unlike the 31⁄2-inch floppy disk, most optical discs do not have an integrated protective casing and are therefore susceptible to data transfer problems due to scratches, fingerprints, and other environmental problems. Blu-rays have a coating called durabis that mitigates these problems.
Optical discs are usually between 7.6 and 30 cm (3.0 and 11.8 in) in diameter, with 12 cm (4.7 in) being the most common size. The so-called program area that contains the data commonly starts 25 millimetres away from the center point.[3] A typical disc is about 1.2 mm (0.047 in) thick, while the track pitch (distance from the center of one track to the center of the next) ranges from 1.6 μm (for CDs) to 320 nm (for Blu-ray discs).
Recording types
An optical disc is designed to support one of three recording types: read-only (e.g.: CD and CD-ROM), recordable (write-once, e.g. CD-R), or re-recordable (rewritable, e.g. CD-RW). Write-once optical discs commonly have an organic dye (may also be a (Phthalocyanine) Azo dye, mainly used by Verbatim, or an oxonol dye, used by Fujifilm[4]) recording layer between the substrate and the reflective layer. Rewritable discs typically contain an alloy recording layer composed of a phase change material, most often AgInSbTe, an alloy of silver, indium, antimony, and tellurium.[5] Azo dyes were introduced in 1996 and phthalocyanine only began to see wide use in 2002. The type of dye and the material used on the reflective layer on an optical disc may be determined by shining a light through the disc, as different dye and material combinations have different colors.
Blu-ray Disc recordable discs do not usually use an organic dye recording layer, instead using an inorganic recording layer. Those that do are known as low-to-high (LTH) discs and can be made in existing CD and DVD production lines, but are of lower quality than traditional Blu-ray recordable discs.
Usage
Optical discs are often stored in special cases sometimes called jewel cases and are most commonly used for digital preservation, storing music (e.g. for use in a CD player), video (e.g. for use in a Blu-ray player), or data and programs for personal computers (PC), as well as offline hard copy data distribution due to lower per-unit prices than other types of media. The Optical Storage Technology Association (OSTA) promoted standardized optical storage formats.
Libraries and archives enact optical media preservation procedures to ensure continued usability in the computer's optical disc drive or corresponding disc player.
File operations of traditional mass storage devices such as flash drives, memory cards and hard drives can be simulated using a UDF live file system.
For computer data backup and physical data transfer, optical discs such as CDs and DVDs are gradually being replaced with faster, smaller solid-state devices, especially the USB flash drive.[6][citation needed] This trend is expected to continue as USB flash drives continue to increase in capacity and drop in price.[citation needed]
Additionally, music, movies, games, software and TV shows purchased, shared or streamed over the Internet has significantly reduced the number of audio CDs, video DVDs and Blu-ray discs sold annually. However, audio CDs and Blu-rays are still preferred and bought by some, as a way of supporting their favorite works while getting something tangible in return and also since audio CDs (alongside vinyl records and cassette tapes) contain uncompressed audio without the artifacts introduced by lossy compression algorithms like MP3, and Blu-rays offer better image and sound quality than streaming media, without visible compression artifacts, due to higher bitrates and more available storage space.[7] However, Blu-rays may sometimes be torrented over the internet, but torrenting may not be an option for some, due to restrictions put in place by ISPs on legal or copyright grounds, low download speeds or not having enough available storage space, since the content may weigh up to several dozen gigabytes. Blu-rays may be the only option for those looking to play large games without having to download them over an unreliable or slow internet connection, which is the reason why they are still (as of 2020) widely used by gaming consoles, like the PlayStation 4 and Xbox One X. As of 2020, it is unusual for PC games to be available in a physical format like Blu-ray.
Discs should not have any stickers and should not be stored together with paper; papers must be removed from the jewel case before storage. Discs should be handled by the edges to prevent scratching, with the thumb on the inner edge of the disc. The ISO Standard 18938:2008 is about best optical disc handling techniques. Optical disc cleaning should never be done in a circular pattern, to avoid concentric cirles from forming on the disc. Improper cleaning can scratch the disc. Recordable discs should not be exposed to light for extended periods of time. Optical discs should be stored in dry and cool conditions to increase longevity, with temperatures between -10 and 23 °C, never exceeding 32 °C, and with humidity never falling below 10%, with recommended storage at 20 to 50% of humidity without fluctuations of more than ±10%.
Durability
Although optical discs are more durable than earlier audio-visual and data storage formats, they are susceptible to environmental and daily-use damage, if handled improperly.
Optical discs are not prone to uncontrollable catastrophic failures such as head crashes, power surges, or exposure to water like hard disk drives and flash storage, since optical drives' storage controllers are not tied to optical discs themselves like with hard disk drives and flash memory controllers, and a disc is usually recoverable from a defective optical drive by pushing an unsharp needle into the emergency ejection pinhole, and has no point of immediate water ingress and no integrated circuitry.
Safety
As the media itself only is accessed through a laser beam, no internal control circuitry, it can not contain malicious hardware such as so-called rubber-duckies or USB killers.
Malware is unable to spread over factory-pressed media, finalized media, or -ROM (read-only memory) drive types whose lasers lack the strength to write data. Malware is conventionally programmed to detect and spread over traditional mass storage devices such as flash drives, external solid state drives and hard disk drives.[8]
History
This article possibly contains original research. (July 2009) |
The first recorded historical use of an optical disc was in 1884 when Alexander Graham Bell, Chichester Bell and Charles Sumner Tainter recorded sound on a glass disc using a beam of light.[9]
Optophonie is a very early (1931) example of a recording device using light for both recording and playing back sound signals on a transparent photograph.[10]
An early analogue optical disc system existed in 1935, used on Welte's Lichttonorgel sampling organ.[11]
An early analog optical disc used for video recording was invented by David Paul Gregg in 1958[12] and patented in the US in 1961 and 1969. This form of optical disc was a very early form of the DVD (U.S. Patent 3,430,966). It is of special interest that U.S. Patent 4,893,297, filed 1989, issued 1990, generated royalty income for Pioneer Corporation's DVA until 2007 —then encompassing the CD, DVD, and Blu-ray systems. In the early 1960s, the Music Corporation of America bought Gregg's patents and his company, Gauss Electrophysics.
American inventor James T. Russell has been credited with inventing the first system to record a digital signal on an optical transparent foil that is lit from behind by a high-power halogen lamp. Russell's patent application was first filed in 1966 and he was granted a patent in 1970. Following litigation, Sony and Philips licensed Russell's patents (then held by a Canadian company, Optical Recording Corp.) in the 1980s.[13][14][15]
Both Gregg's and Russell's disc are floppy media read in transparent mode, which imposes serious drawbacks. In the Netherlands in 1969, Philips Research physicist, Pieter Kramer invented an optical videodisc in reflective mode with a protective layer read by a focused laser beam U.S. Patent 5,068,846, filed 1972, issued 1991. Kramer's physical format is used in all optical discs. In 1975, Philips and MCA began to work together, and in 1978, commercially much too late, they presented their long-awaited Laserdisc in Atlanta. MCA delivered the discs and Philips the players. However, the presentation was a commercial failure, and the cooperation ended.
In Japan and the U.S., Pioneer succeeded with the Laserdisc until the advent of the DVD. In 1979, Philips and Sony, in consortium, successfully developed the audio compact disc.
In 1979, Exxon STAR Systems in Pasadena, CA built a computer controlled WORM drive that utilized thin film coatings of Tellurium and Selenium on a 12" diameter glass disk. The recording system utilized blue light at 457 nm to record and red light at 632.8 nm to read. STAR Systems was bought by Storage Technology Corporation (STC) in 1981 and moved to Boulder, CO. Development of the WORM technology was continued using 14" diameter aluminum substrates. Beta testing of the disk drives, originally labeled the Laser Storage Drive 2000 (LSD-2000), was only moderately successful. Many of the disks were shipped to RCA Laboratories (now David Sarnoff Research Center) to be used in the Library of Congress archiving efforts. The STC disks utilized a sealed cartridge with an optical window for protection U.S. Patent 4,542,495.
The CD-ROM format was developed by Sony and Philips, introduced in 1984, as an extension of Compact Disc Digital Audio and adapted to hold any form of digital data. The same year, Sony demonstrated a LaserDisc data storage format, with a larger data capacity of 3.28 GB.[16]
In the late 1980s and early 1990s, Optex, Inc. of Rockville, MD, built an erasable optical digital video disc system U.S. Patent 5,113,387 using Electron Trapping Optical Media (ETOM)U.S. Patent 5,128,849. Although this technology was written up in Video Pro Magazine's December 1994 issue promising "the death of the tape", it was never marketed.
In the mid-1990s, a consortium of manufacturers (Sony, Philips, Toshiba, Panasonic) developed the second generation of the optical disc, the DVD.[17]
Magnetic disks found limited applications in storing the data in large amount. So, there was the need of finding some more data storing techniques. As a result, it was found that by using optical means large data storing devices can be made that in turn gave rise to the optical discs. The very first application of this kind was the Compact Disc (CD), which was used in audio systems.
Sony and Philips developed the first generation of the CDs in the mid-1980s with the complete specifications for these devices. With the help of this kind of technology the possibility of representing the analog signal into digital signal was exploited to a great level. For this purpose, the 16-bit samples of the analog signal were taken at the rate of 44,100 samples per second. This sample rate was based on the Nyquist rate of 40,000 samples per second required to capture the audible frequency range to 20 kHz without aliasing, with an additional tolerance to allow the use of less-than-perfect analog audio pre-filters to remove any higher frequencies.[18] The first version of the standard allowed up to 75 minutes of music, which required 650MB of storage.
The DVD disc appeared after the CD-ROM had become widespread in society.
The third generation optical disc was developed in 2000–2006 and was introduced as Blu-ray Disc. First movies on Blu-ray Discs were released in June 2006.[19] Blu-ray eventually prevailed in a high definition optical disc format war over a competing format, the HD DVD. A standard Blu-ray disc can hold about 25 GB of data, a DVD about 4.7 GB, and a CD about 700 MB.
First-generation
From the start optical discs were used to store broadcast-quality analog video, and later digital media such as music or computer software. The LaserDisc format stored analog video signals for the distribution of home video, but commercially lost to the VHS videocassette format, due mainly to its high cost and non-re-recordability; other first-generation disc formats were designed only to store digital data and were not initially capable of use as a digital video medium.
Most first-generation disc devices had an infrared laser reading head. The minimum size of the laser spot is proportional to the wavelength of the laser, so wavelength is a limiting factor upon the amount of information that can be stored in a given physical area on the disc. The infrared range is beyond the long-wavelength end of the visible light spectrum, so it supports less density than shorter-wavelength visible light. One example of high-density data storage capacity, achieved with an infrared laser, is 700 MB of net user data for a 12 cm compact disc.
Other factors that affect data storage density include: the existence of multiple layers of data on the disc, the method of rotation (Constant linear velocity (CLV), Constant angular velocity (CAV), or zoned-CAV), the composition of lands and pits, and how much margin is unused is at the center and the edge of the disc.
- Compact disc (CD) and derivatives
- LaserDisc
- GD-ROM
- Phase-change Dual
- Double Density Compact Disc (DDCD)
- Magneto-optical disc
- MiniDisc (MD)
- Write Once Read Many (WORM)
Second-generation
Second-generation optical discs were for storing great amounts of data, including broadcast-quality digital video. Such discs usually are read with a visible-light laser (usually red); the shorter wavelength and greater numerical aperture[20] allow a narrower light beam, permitting smaller pits and lands in the disc. In the DVD format, this allows 4.7 GB storage on a standard 12 cm, single-sided, single-layer disc; alternatively, smaller media, such as the DataPlay format, can have capacity comparable to that of the larger, standard compact 12 cm disc.[21]
- DVD and derivatives
- Nintendo GameCube Game Disc (miniDVD derivative)
- Wii Optical Disc (DVD derivative)
- Super Audio CD (SACD)
- Enhanced Versatile Disc
- DataPlay
- Hi-MD
- Universal Media Disc (UMD)
- Ultra Density Optical
Third-generation
Third-generation optical discs are used for distributing high-definition video and videogames and support greater data storage capacities, accomplished with short-wavelength visible-light lasers and greater numerical apertures. Blu-ray Disc and HD DVD uses blue-violet lasers and focusing optics of greater aperture, for use with discs with smaller pits and lands, thereby greater data storage capacity per layer.[20] In practice, the effective multimedia presentation capacity is improved with enhanced video data compression codecs such as H.264/MPEG-4 AVC and VC-1.
- Blu-ray (up to 400 GB - experimental[22][23])
- Wii U Optical Disc (25 GB per layer)
- HD DVD (discontinued disc format, up to 51 GB triple layer)
- CBHD (a derivative of the HD DVD format)
- HD VMD
- Professional Disc
Announced but not released:
Fourth-generation
The following formats go beyond the current third-generation discs and have the potential to hold more than one terabyte (1 TB) of data and at least some are meant for cold data storage in data centers:[24][dubious ]
Announced but not released:
- LS-R
- Protein-coated disc
- Stacked Volumetric Optical Disc
- 5D DVD
- 3D optical data storage (not a single technology, examples are Hyper CD-ROM and Fluorescent Multilayer Disc)
In 2004, development of the Holographic Versatile Disc (HVD) commenced, which promised the storage of several terabytes of data per disc. However, development stagnated towards the late 2000s due to lack of funding.
In 2006, it was reported that Japanese researchers developed ultraviolet ray lasers with a wavelength of 210 nanometers, which would enable a higher bit density than Blu-ray discs.[25] As of 2022, no updates on that project have been reported.
Folio Photonics is planning to release high-capacity discs in 2024 with the cost of $5 per TB, with a roadmap to $1 per TB, using 80% less power than HDD.[26]
Overview of optical types
Name | Capacity | Experimental[Note 1] | Years[Note 2] |
---|---|---|---|
LaserDisc (LD) | N/A | 1971–2007 | |
Write Once Read Many Disk (WORM) | 0.2–6.0 GB | 1979–1984 | |
Compact Disc (CD) | 0.7–0.9 GB | 1982–present | |
Electron Trapping Optical Memory (ETOM) | 6.0–12.0 GB | 1987–1996 | |
MiniDisc (MD) | 0.14–1.0 GB | 1989–present | |
Magneto Optical Disc (MOD) | 0.1–16.7 GB | 1990–present | |
Digital Versatile Disc (DVD) | 4.7–17 GB | 1995–present | |
LIMDOW (Laser Intensity Modulation Direct OverWrite) | 2.6 GB | 10 GB | 1996–present |
GD-ROM | 1.2 GB | 1997–2006 | |
Fluorescent Multilayer Disc | 50–140 GB | 1998-2003 | |
Versatile Multilayer Disc (VMD) | 5–20 GB | 100 GB | 1999-2010 |
Hyper CD-ROM | 1 PB | 100 EB | 1999–present |
DataPlay | 500 MB | 1999-2006 | |
Ultra Density Optical (UDO) | 30–60 GB | 2000–present | |
Forward Versatile Disc (FVD) | 5.4–15 GB | 2001–present | |
Enhanced Versatile Disc (EVD) | DVD | 2002-2004 | |
HD DVD | 15–51 GB | 1 TB[citation needed] | 2002-2008 |
Blu-ray Disc (BD) | 25 GB 50 GB |
2002–present | |
BDXL | 100 GB, 128 GB | 1 TB | 2010–present |
Professional Disc for Data (PDD) | 23 GB | 2003-2006 | |
Professional Disc | 23–128 GB | 2003–present | |
Digital Multilayer Disk | 22-32 GB | 2004–2007 | |
Multiplexed Optical Data Storage (MODS-Disc) | 250 GB–1 TB | 2004–present | |
Universal Media Disc (UMD) | 0.9–1.8 GB | 2004–2014 | |
Holographic Versatile Disc (HVD) | 6.0 TB | 2004–2012 | |
Protein-coated disc (PCD) | 50 TB | 2005–2006 | |
M-DISC | 4.7 GB (DVD format) 25 GB (Blu-ray format) 50 GB (Blu-ray format) 100 GB (BDXL format) [27] |
2009–present | |
Archival Disc | 0.3-1 TB | 2014–present | |
Ultra HD Blu-ray | 50 GB 66 GB 100 GB 128 GB |
2015–present |
- Notes
- Years from (known) start of development till end of sales or development.
Recordable and writable optical discs
There are numerous formats of optical direct to disk recording devices on the market, all of which are based on using a laser to change the reflectivity of the digital recording medium in order to duplicate the effects of the pits and lands created when a commercial optical disc is pressed. Formats such as CD-R and DVD-R are "Write once read many" or write-once, while CD-RW and DVD-RW are rewritable, more like a magnetic recording hard disk drive (HDD).
Media technologies vary, for example, M-DISC media uses a rock-like layer to retain data for longer than conventional recordable media. While being read-only compatible with existing DVD and Blu-ray drives, M-DISC media can only be written to using a stronger laser specifically made for this purpose, which is built into fewer optical drive models.
Surface error scanning
This section needs expansion. You can help by adding to it. (July 2020) |
Optical media can predictively be scanned for errors and media deterioration well before any data becomes unreadable.[28] Optical formats include some redundancy for error correction, which works until the amount of error exceeds a threshold. A higher rate of errors may indicates deteriorating and/or low quality media, physical damage, an unclean surface and/or media written using a defective optical drive.
Precise error scanning requires access to the raw, uncorrected readout of a disc, which is not always provided by a drive. As a result, support of this functionality varies per optical drive manufacturer and model. On ordinary drives without this functionality, it is possible to still look for unexpected reduction in read speed as an indirect, much less reliable measure.[29]
Error scanning software includes Nero DiscSpeed, k-probe, Opti Drive Control (formerly "CD speed 2000") and DVD info Pro for Windows, and QPxTool for cross-platform.
Error types
There are different types of error measurements, including so-called "C1", "C2" and "CU" errors on CDs, and "PI/PO (parity inner/outer) errors" and the more critical "PI/PO failures" on DVDs. Finer-grain error measurements on CDs supported by very few optical drives are called E11, E21, E31, E21, E22, E32.
"CU" and "POF" represent uncorrectable errors on data CDs and DVDs respectively, thus data loss, and can be a result of too many consecutive smaller errors.[30]
Due to the weaker error correction used on Audio CDs (Red Book standard) and Video CDs (White Book standard), C2 errors already lead to data loss. However, even with C2 errors, the damage is inaudible to some extent.
Blu-ray discs use so-called LDC (Long Distance Codes) and BIS (Burst Indication Subcodes) error parameters. According to the developer of the Opti Drive Control software, a disc can be considered healthy at an LDC error rate below 13 and BIS error rate below 15.[31]
Optical disc manufacturing
Optical discs are made using replication. This process can be used with all disc types. Recordable discs have pre-recorded vital information, like manufacturer, disc type, maximum read and write speeds, etc. In replication, a cleanroom with yellow light is necessary to protect the light-sensitive photoresist and to prevent dust from corrupting the data on the disc.
A glass master is used in replication. The master is placed in a machine that cleans it as much as possible using a rotating brush and deionized water, preparing it for the next step. In the next step, a surface analyzer inspects the cleanliness of the master before photoresist is applied on the master.
The photoresist is then baked in an oven to solidify it. Then, in the exposure process, the master is placed in a turntable where a laser selectively exposes the resist to light. At the same time, a developer and deionized water are applied to the disc to remove the exposed resist. This process forms the pits and lands that represent the data on the disc.
A thin coating of metal is then applied to the master, making a negative of the master with the pits and lands in it. The negative is then peeled off the master and coated in a thin layer of plastic. The plastic protects the coating while a punching press punches a hole into the center of the disc, and punches excess material.
The negative is now a stamper - a part of the mold that will be used for replication. It is placed on one side of the mold with the data side containing the pits and lands facing out. This is done inside an injection molding machine. The machine then closes the mold and injects polycarbonate in the cavity formed by the walls of the mold, which forms or molds the disc with the data on it.
The molten polycarbonate fills the pits or spaces between the lands on the negative, acquiring their shape when it solidifies. This step is somewhat similar to record pressing.
The polycarbonate disc cools quickly and is promptly removed from the machine, before forming another disc. The disc is then metallized, covered with a thin reflective layer of aluminum. The aluminum fills the space once occupied by the negative.
A layer of varnish is then applied to protect the aluminum coating and provide a surface suitable for printing. The varnish is applied near the center of the disc, and the disc is spun, evenly distributing the varnish on the surface of the disc. The varnish is hardened using UV light. The discs are then silkscreened or a label is otherwise applied.[32][33][34]
Recordable discs add a dye layer, and rewritable discs add a phase change alloy layer instead, which is protected by upper and lower dielectric (electrically insulating) layers. The layers may be sputtered. The additional layer is between the grooves and the reflective layer of the disc. Grooves are made in recordable discs in place of the traditional pits and lands found in replicated discs, and the two can be made in the same exposure process.[35][36][37][38][39] In DVDs, the same processes as in CDs are carried out, but in a thinner disc. The thinner disc is then bonded to a second, equally thin but blank, disc using UV-curable Liquid optically clear adhesive, forming a DVD disc.[40][4][41][42] This leaves the data in the middle of the disc, which is necessary for DVDs to achieve their storage capacity. In multi layer discs, semi reflective instead of reflective coatings are used for all layers except the last layer, which is the deepest one and uses a traditional reflective coating.[43][44][45]
Dual layer DVDs are made slightly differently. After metallization (with a thinner metal layer to allow some light to pass through), base and pit transfer resins are applied and pre-cured in the center of the disc. Then the disc is pressed again using a different stamper, and the resins are completely cured using UV light before being separated from the stamper. Then the disc receives another, thicker metallization layer, and is then bonded to the blank disc using LOCA glue. DVD-R DL and DVD+R DL discs receive a dye layer after curing, but before metallization. CD-R, DVD-R, and DVD+R discs receive the dye layer after pressing but before metallization. CD-RW, DVD-RW and DVD+RW receive a metal alloy layer sandwiched between 2 dielectric layers. HD-DVD is made in the same way as DVD. In recordable and rewritable media, most of the stamper is composed of grooves, not pits and lands. The grooves contain a wobble frequency that is used to locate the position of the reading or writing laser on the disc. DVDs use pre-pits instead, with a constant frequency wobble.[36]
Blu-ray
HTL (high-to-low type) Blu-ray discs are made differently. First, a silicon wafer is used instead of a glass master.[46] The wafer is processed in the same way a glass master would.
The wafer is then electroplated to form a 300-micron thick nickel stamper, which is peeled off from the wafer. The stamper is mounted onto a mold inside a press or embosser.
The polycarbonate discs are molded in a similar fashion to DVD and CD discs. If the discs being produced are BD-Rs or BD-REs, the mold is fitted with a stamper that stamps a groove pattern onto the discs, in lieu of the pits and lands found on BD-ROM discs.
After cooling, a 35 nanometre-thick layer of silver alloy is applied to the disc using sputtering.[47][48][49] Then the second layer is made by applying base and pit transfer resins to the disc, and are pre-cured in its center.
After application and pre-curing, the disc is pressed or embossed using a stamper and the resins are immediately cured using intense UV light, before the disc is separated from the stamper. The stamper contains the data that will be transferred to the disc. This process is known as embossing and is the step that engraves the data onto the disc, replacing the pressing process used in the first layer, and it is also used for multi layer DVD discs.
Then, a 30 nanometre-thick layer of silver alloy is then sputtered onto the disc and the process is repeated as many times as required. Each repetition creates a new data layer. (The resins are applied again, pre-cured, stamped (with data or grooves) and cured, silver alloy is sputtered and so on)
BD-R and BD-RE discs receive (through sputtering) a metal (recording layer) alloy (that is sandwiched between two dielectric layers, also sputtered, in BD-RE), before receiving the 30 nanometre metallization (silver alloy, aluminum or gold) layer, which is sputtered. Alternatively, the silver alloy may be applied before the recording layer is applied. Silver alloys are usually used in Blu-rays, and aluminum is usually used on CDs and DVDs. Gold is used in some "Archival" CDs and DVDs, since it is more chemically inert and resistant to corrosion than aluminum, which corrodes into aluminum oxide, which can be seen in disc rot as transparent patches or dots in the disc, that prevent the disc from being read, since the laser light passes through the disc instead of being reflected back into the laser pickup assembly to be read. Normally aluminum doesn't corrode since it has a thin oxide layer that forms on contact with oxygen. In this case it can corrode due to its thinness.
Then, the 98 micron-thick cover layer is applied using UV-curable liquid optically clear adhesive, and a 2 micron-thick hard coat (such as Durabis) is also applied and cured using UV light. In the last step, a 10 nanometre-thick silicon nitride barrier layer is applied to the label side of the disc to protect against humidity.[37][47][50][51] Blu-rays have their data very close to the read surface of the disc, which is necessary for Blu-rays to achieve their capacity.
Discs in large quantities can either be replicated or duplicated. In replication, the process explained above is used to make the discs, while in duplication, CD-R, DVD-R or BD-R discs are recorded and finalized to prevent further recording and allow for wider compatibility.[52] (See Optical disc authoring). The equipment is also different: replication is carried out by fully automated purpose-built machinery whose cost is in the hundreds of thousands of US dollars in the used market,[53] while duplication can be automated (using what's known as an autoloader[54]) or be done by hand, and only requires a small tabletop duplicator.[55]
Specifications
Generation | Base | Max | |
---|---|---|---|
(Mbit/s) | (Mbit/s) | × | |
1st (CD) | 1.17 | 65.6 | 56× |
2nd (DVD) | 10.57 | 253.6 | 24× |
3rd (BD) | 36 | 504 | 14×[56] |
4th (AD) | ? | ? | 14× |
Designation | Sides | Layers (total) |
Diameter | Capacity | ||
---|---|---|---|---|---|---|
(cm) | (GB) | |||||
BD | SS SL | 1 | 1 | 8 | 7.8 | |
BD | SS DL | 1 | 2 | 8 | 15.6 | |
BD | SS SL | 1 | 1 | 12 | 25 | |
BD | SS DL | 1 | 2 | 12 | 50 | |
BD | SS TL | 1 | 3 | 12 | 100 | |
BD | SS QL | 1 | 4 | 12 | 128 | |
CD–ROM 74 min | SS SL | 1 | 1 | 12 | 0.682 | |
CD–ROM 80 min | SS SL | 1 | 1 | 12 | 0.737 | |
CD–ROM | SS SL | 1 | 1 | 8 | 0.194 | |
DDCD–ROM | SS SL | 1 | 1 | 12 | 1.364 | |
DDCD–ROM | SS SL | 1 | 1 | 8 | 0.387 | |
DVD–1 | SS SL | 1 | 1 | 8 | 1.46 | |
DVD–2 | SS DL | 1 | 2 | 8 | 2.66 | |
DVD–3 | DS SL | 2 | 2 | 8 | 2.92 | |
DVD–4 | DS DL | 2 | 4 | 8 | 5.32 | |
DVD–5 | SS SL | 1 | 1 | 12 | 4.70 | |
DVD–9 | SS DL | 1 | 2 | 12 | 8.54 | |
DVD–10 | DS SL | 2 | 2 | 12 | 9.40 | |
DVD–14 | DS DL/SL | 2 | 3 | 12 | 13.24 | |
DVD–18 | DS DL | 2 | 4 | 12 | 17.08 | |
DVD–R 1.0 | SS SL | 1 | 1 | 12 | 3.95 | |
DVD–R (2.0), +R, –RW, +RW | SS SL | 1 | 1 | 12 | 4.7 | |
DVD-R, +R, –RW, +RW | DS SL | 2 | 2 | 12 | 9.40 | |
DVD–RAM | SS SL | 1 | 1 | 8 | 1.46 | |
DVD–RAM | DS SL | 2 | 2 | 8 | 2.65 | |
DVD–RAM 1.0 | SS SL | 1 | 1 | 12 | 2.58 | |
DVD–RAM 2.0 | SS SL | 1 | 1 | 12 | 4.70 | |
DVD–RAM 1.0 | DS SL | 2 | 2 | 12 | 5.16 | |
DVD–RAM 2.0 | DS SL | 2 | 2 | 12 | 9.40 |
See also
References
In most recent instruments the itmbres have been "samples" (digitally recorded) from existing pipe organs, or resynthesized from samples. (This technology was anticipated by electromechanical oscillators during the 1930s, in what can retrospectively be described as "analog sampling"; examples included the photoelectric LichttonOrgel and the electrostatic Compton Electrone, both of which featured waveforms derived from well-known pipe organs.)
- "DVD in Detail" (PDF). Cinram. 27 November 2000. Archived from the original on October 29, 2008.
- Non-circular optical discs exist for fashion purposes; see shaped compact disc.
External links
- "Inventor of the Week Archive: The Digital Compact Disc". Massachusetts Institute of Technology. December 1999. Archived from the original on 2008-06-19. Retrieved 2007-07-13.
- Dudley, Brier (November 29, 2004). "Scientist's invention was let go for a song". The Seattle Times. Retrieved 2007-07-13.
- "David Gregg and the Optical Disk". About.com. Retrieved 2007-07-13.
- Byers, Fred R. (2003). Care and Handling of CDs and DVDs — A Guide for Librarians and Archivists (PDF) (Report). National Institute of Standards and Technology. Archived from the original (PDF) on September 23, 2008. Retrieved July 17, 2009.
- Romeyn, Jacob. "50th-anniversary -of-the-optical-disc".
- "Optical Storage Technology Association".
- O'Kelly, Terence. "Reference Guide for Optical Media" (PDF). Memorex Inc. – via A.N.T. Audio.
- "The history of ideas "the optical disc as a "unique" carrier of information in the systems management". European Society of the History of Science. Archived from the original on 2015-05-18. Retrieved 2013-06-11.
- "Thomson-CSF's transmissive videodisc".
- "Know Your Digital Storage Media: a guide to the most common types of digital storage media found in archives". USA: University of Texas at San Antonio.
- Longevity of Recordable CDs, DVDs and Blu-rays — Canadian Conservation Institute (CCI) Notes 19/1
https://en.wikipedia.org/wiki/Optical_disc
Passband modulation | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Analog modulation | ||||||||||||||||||
Digital modulation | ||||||||||||||||||
Hierarchical modulation | ||||||||||||||||||
Spread spectrum | ||||||||||||||||||
See also | ||||||||||||||||||
https://en.wikipedia.org/wiki/Line_code Each line code has advantages and disadvantages. Line codes are chosen to meet one or more of the following criteria:
DisparityMost long-distance communication channels cannot reliably transport a DC component. The DC component is also called the disparity, the bias, or the DC coefficient. The disparity of a bit pattern is the difference in the number of one bits vs the number of zero bits. The running disparity is the running total of the disparity of all previously transmitted bits.[5] The simplest possible line code, unipolar, gives too many errors on such systems, because it has an unbounded DC component. Most line codes eliminate the DC component – such codes are called DC-balanced, zero-DC, or DC-free. There are three ways of eliminating the DC component:
PolarityBipolar line codes have two polarities, are generally implemented as RZ, and have a radix of three since there are three distinct output levels (negative, positive and zero). One of the principle advantages of this type of code is that it can eliminate any DC component. This is important if the signal must pass through a transformer or a long transmission line. Unfortunately, several long-distance communication channels have polarity ambiguity. Polarity-insensitive line codes compensate in these channels.[6][7][8][9] There are three ways of providing unambiguous reception of 0 and 1 bits over such channels:
Run-length limited codesFor reliable clock recovery at the receiver, a run-length limitation may be imposed on the generated channel sequence, i.e., the maximum number of consecutive ones or zeros is bounded to a reasonable number. A clock period is recovered by observing transitions in the received sequence, so that a maximum run length guarantees sufficient transitions to assure clock recovery quality. RLL codes are defined by four main parameters: m, n, d, k. The first two, m/n, refer to the rate of the code, while the remaining two specify the minimal d and maximal k number of zeroes between consecutive ones. This is used in both telecommunication and storage systems that move a medium past a fixed recording head.[10] Specifically, RLL bounds the length of stretches (runs) of repeated bits during which the signal does not change. If the runs are too long, clock recovery is difficult; if they are too short, the high frequencies might be attenuated by the communications channel. By modulating the data, RLL reduces the timing uncertainty in decoding the stored data, which would lead to the possible erroneous insertion or removal of bits when reading the data back. This mechanism ensures that the boundaries between bits can always be accurately found (preventing bit slip), while efficiently using the media to reliably store the maximal amount of data in a given space. Early disk drives used very simple encoding schemes, such as RLL (0,1) FM code, followed by RLL (1,3) MFM code which were widely used in hard disk drives until the mid-1980s and are still used in digital optical discs such as CD, DVD, MD, Hi-MD and Blu-ray using EFM and EFMPLus codes.[11] Higher density RLL (2,7) and RLL (1,7) codes became the de facto standards for hard disks by the early 1990s.[citation needed] SynchronizationLine coding should make it possible for the receiver to synchronize itself to the phase of the received signal. If the clock recovery is not ideal, then the signal to be decoded will not be sampled at the optimal times. This will increase the probability of error in the received data. Biphase line codes require at least one transition per bit time. This makes it easier to synchronize the transceivers and detect errors, however, the baud rate is greater than that of NRZ codes. Other considerationsA line code will typically reflect technical requirements of the transmission medium, such as optical fiber or shielded twisted pair. These requirements are unique for each medium, because each one has different behavior related to interference, distortion, capacitance and attenuation.[12] Common line codes
Optical line codes
See also
ReferencesLine codes ... facilitates the transmission of data over telecommunication and computer networks and its storage in multimedia systems. When PSK data modulation is used, the potential exists for an ambiguity in the polarity of the received channel symbols. This problem can be solved in one of two ways. First ... a so-called transparent code. ... Another benefit of differential encoding is its insensitivity to polarity of the signal. ... If the leads of a twisted pair are accidentally reversed... A detailed description is furnished of the limiting properties of runlength limited sequences. A high-density alternative to EFM is described.
External links
https://en.wikipedia.org/wiki/Line_code https://en.wikipedia.org/wiki/Line_code https://en.wikipedia.org/wiki/Three-valued_logic https://en.wikipedia.org/wiki/Category:Physical_layer_protocols https://en.wikipedia.org/wiki/Baseband https://en.wikipedia.org/wiki/Bit_rate https://en.wikipedia.org/wiki/Baud https://en.wikipedia.org/wiki/Alternate-Phase_Return-to-Zero https://en.wikipedia.org/wiki/Non-return-to-zero#Non-return-to-zero_inverted https://en.wikipedia.org/wiki/Carrier-Suppressed_Return-to-Zero https://en.wikipedia.org/wiki/Non-return-to-zero#Non-return-to-zero_inverted https://en.wikipedia.org/wiki/Return-to-zero https://en.wikipedia.org/wiki/Non-return-to-zero#Non-return-to-zero_level https://en.wikipedia.org/wiki/Non-return-to-zero#Non-return-to-zero_level https://en.wikipedia.org/wiki/Self-clocking_signal https://en.wikipedia.org/wiki/Bit_slip https://en.wikipedia.org/wiki/Serial_communication https://en.wikipedia.org/wiki/Non-return-to-zero#Non-return-to-zero_space https://en.wikipedia.org/wiki/Bit_stuffing https://en.wikipedia.org/wiki/Syncword https://en.wikipedia.org/wiki/On%E2%80%93off_keying https://en.wikipedia.org/wiki/Spectral_efficiency https://en.wikipedia.org/wiki/Medium_access_control https://en.wikipedia.org/wiki/Media-independent_interface https://en.wikipedia.org/wiki/Physical_layer#Ethernet_physical_transceiver https://en.wikipedia.org/wiki/Bipolar_encoding https://en.wikipedia.org/wiki/T-carrier https://en.wikipedia.org/wiki/Time-division_multiplexing https://en.wikipedia.org/wiki/Unipolar_encoding https://en.wikipedia.org/wiki/Differential_Manchester_encoding https://en.wikipedia.org/wiki/Phase-shift_keying#Binary_phase-shift_keying_(BPSK) https://en.wikipedia.org/wiki/Demodulation https://en.wikipedia.org/wiki/Hamming_code https://en.wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter https://en.wikipedia.org/wiki/Universal_synchronous_and_asynchronous_receiver-transmitter https://en.wikipedia.org/wiki/Twisted_pair https://en.wikipedia.org/wiki/Common-mode_signal https://en.wikipedia.org/wiki/Electromagnetic_interference https://en.wikipedia.org/wiki/Balanced_line https://en.wikipedia.org/wiki/Ground_(electricity) https://en.wikipedia.org/wiki/Electrostatic-sensitive_device https://en.wikipedia.org/wiki/Electrostatic_discharge https://en.wikipedia.org/wiki/Electrical_breakdown Zeroth-order logic is a branch of logic without variables or quantifiers. Some authors use the phrase "zeroth-order logic" as a synonym for the propositional calculus,[1] but an alternative definition extends propositional logic by adding constants, operations, and relations on non-Boolean values.[2] Every zeroth-order language in this broader sense is complete and compact.[2] References
Categories:
https://en.wikipedia.org/wiki/Zeroth-order_logic n coding theory, a constant-weight code, also called an m-of-n code, is an error detection and correction code where all codewords share the same Hamming weight. The one-hot code and the balanced code are two widely used kinds of constant-weight code. The theory is closely connected to that of designs (such as t-designs and Steiner systems). Most of the work on this field of discrete mathematics is concerned with binary constant-weight codes. Binary constant-weight codes have several applications, including frequency hopping in GSM networks.[1] Most barcodes use a binary constant-weight code to simplify automatically setting the brightness threshold that distinguishes black and white stripes. Most line codes use either a constant-weight code, or a nearly-constant-weight paired disparity code. In addition to use as error correction codes, the large space between code words can also be used in the design of asynchronous circuits such as delay insensitive circuits. Constant-weight codes, like Berger codes, can detect all unidirectional errors. 1-of-N codesA special case of constant weight codes are the one-of-N codes, that encode bits in a code-word of bits. The one-of-two code uses the code words 01 and 10 to encode the bits '0' and '1'. A one-of-four code can use the words 0001, 0010, 0100, 1000 in order to encode two bits 00, 01, 10, and 11. An example is dual rail encoding, and chain link [4] used in delay insensitive circuits. For these codes, and . Some of the more notable uses of one-hot codes include biphase mark code uses a 1-of-2 code; pulse-position modulation uses a 1-of-n code; address decoder, etc.
Balanced codeIn coding theory, a balanced code is a binary forward error correction code for which each codeword contains an equal number of zero and one bits. Balanced codes have been introduced by Donald Knuth;[5] they are a subset of so-called unordered codes, which are codes having the property that the positions of ones in a codeword are never a subset of the positions of the ones in another codeword. Like all unordered codes, balanced codes are suitable for the detection of all unidirectional errors in an encoded message. Balanced codes allow for particularly efficient decoding, which can be carried out in parallel.[5][6][7] Some of the more notable uses of balanced-weight codes include biphase mark code uses a 1 of 2 code; 6b/8b encoding uses a 4 of 8 code; the Hadamard code is a of code (except for the zero codeword), the three-of-six code; etc. The 3-wire lane encoding used in MIPI C-PHY can be considered a generalization of constant-weight code to ternary -- each wire transmits a ternary signal, and at any one instant one of the 3 wires is transmitting a low, one is transmitting a middle, and one is transmitting a high signal.[8] m-of-n codesAn m-of-n code is a separable error detection code with a code word length of n bits, where each code word contains exactly m instances of a "one". A single bit error will cause the code word to have either m + 1 or m − 1 "ones". An example m-of-n code is the 2-of-5 code used by the United States Postal Service. The simplest implementation is to append a string of ones to the original data until it contains m ones, then append zeros to create a code of length n. Example:
Some of the more notable uses of constant-weight codes, other than the one-hot and balanced-weight codes already mentioned above, include Code 39 uses a 3-of-9 code; bi-quinary coded decimal code uses a 2-of-7 code, the 2-of-5 code, etc. ReferencesExternal links
https://en.wikipedia.org/wiki/Constant-weight_code https://en.wikipedia.org/wiki/Address_decoder https://en.wikipedia.org/wiki/Dual_rail_encoding
|
No comments:
Post a Comment