Document Sample

Date/Time Software is a Chaotic Mess and the Anarchy is Increasing of a Standardized Date/Time Obsolete! In 1964, the IBM System 360 made all other computers obsolete. In 1985, the IEEE 754 binary floating point standard made a half a million computers obsolete. Ultimate Date/Time will make all other date/time software obsolete. Chaos! B f h Sy 360, yc u h d d ff z g d g w 1’ complement. Before the IEEE 754, almost every computer had different floating point size, different ranges and different precisions. Before Ultimate Date/Time, almost every date/time software has different data type formats, different date ranges or different time precisions. Order! All processors have universally implemented the System 360 integer sizes of 8-bits, 16-bits, and 32-bits and 2’ c g . All processors have universally implemented the IEEE 754 floating point 32-bit and 64-bit integers, its standardized ranges and time precisions and “gradual-underflow”. All software will universally implement Ultimate Date/Time format: o That has a standardized size of 32-bits and other sizes yet to be determined. o That has the largest date range ±9999 or 19999 years. o That has the smallest time precision of fractions-of-seconds to 10 digits (100 picoseconds or 10-10). o Th h h y u “ u d- ”. o That has the only global timezone conversion using standard codes. Reasons for Ultimate Date/Time! h h w d’ fastest time zone conversion. o It does time zone conversion using ½ to ¼ the processors usage. o Zillions of time zone conversions are done each day. h h w d’ y du h cf f h O g z f S d dz SO 8601 date formats: o Gregorian calendar dates yyyy-mm-dd year-month-day o Day-of-year yyyy-ddd year-day o Week-of-year yyyy-Www-d year-week-day h h w d’ y du h cf SO 8601 f : o Fractions of seconds hh:mm:ss,ffffffffff o Fractions of minutes hh:mm.ffffffffffff o Fraction of hours hh.ffffffffffffff o Fraction of days .ffffffffffffffff (not an ISO format) h h w d’ y u f h d xc f HR-XML Consortium, ISO 8601 and IEEE 754. o Exceptions: ”N A c ” d “N K w ” HR-XML standards. Overflow/Underflow IEEE 754 standards. o Options AnyDateTime HR-XML time options and timezone options. ISO 8601 partial date ISO 8601 truncation and reductions. Fraction precision supported by Microsoft in 2008 and Oracle in 2001. 1 Impossible! The best and brightest mathematical minds have found it impossible to develop computer routines (function, algorithm) that correctly do joint month and day arithmetic. Month-day arithmetic is not commutative and associative1 like standard numbers. Therefore to get the correct answer sometime the order of month and day arithmetic matters: o Sometimes days must be subtracted before months. o Sometime months must be subtracted before days. o However, often the order of subtraction does not matter. The trouble is that months may have 28, 29, 30 and 31 days. o Humans have common sense that allows them to do it correctly.2 o Computers lack a common sense operation h y d ’ d c c y. “It's kinda fun to do the impossible." Walt Disney. Possible! Someone who w ’ ugh k w it was impossible found a revolutionary date/time arithmetic routine that makes possible joint month and day arithmetic. It does simultaneously addition/subtraction of up to 16 digits of years-months-days-hours-minutes-seconds. Concurrent arithmetic gets the correct answer just like humans do with common sense. "Any sufficiently advanced technology is indistinguishable from magic." Sir Arthur C. Clark inventor, futurist, novelist and BBC TV host and commentator. Magic! Through the magic of the mixed-radix calendrical calculation algorithm3 the computer world can standardize internal computer date/time, have computer systems that respond quicker and help: In delivering applications faster. In reducing application development cost. In eliminating date/time calculation deficiencies. In increasing innovation. In conveying management information that has greater insights necessary for better decisions. Computers do zillions of timezone conversions each day. Tradition! The best and brightest mathematical minds in the computer industry: Agree unanimously that the fastest method to do timezone conversion is: o Convert field based years-month-days-hours-minutes to total sequential seconds. o Add/subtract changes in seconds. o Convert total seconds back to minutes-hours-days-months-years. This is like pounding square pegs into round holes and then gluing them back together. Disagree unanimously about how to do it. Therefore today if you are a system designer or programmer you must cope with: o Every line of software storing date/time differently and having different epochs, date ranges and time precisions. The anarchy is increasing with almost 50 different formats having been added in the last 10 years. Th u h f fw c ’ u d d (c ’ d/w ) h ’ d / . o Every line of software using different formulas and tools. There are over 200 different tools for working with and manipulating date/time. This is worse than the Tower of Babel that only had a confusion of speech. The possible appearance, the Ziggurat of Ur in ancient Babylon. 2 Miracle of Miracles! The revolutionary mixed-radix date/time algorithm arithmetic: h w d’ f . Other timezone arithmetic is 2 to 5 or more times slower. Has the largest date range. The date range is ±9999 years or a total range of 19999 years. Has the smallest precision. The precision is 100 picoseconds, which is fraction of seconds to 10 digits or 10-10. Its precision is smaller than Network Time Protocol (NTP). Wonder of Wonders! The heart of these date/time tools is the mixed-radix algorithm engine that males possible the w d’ simplest and most power date/time tools. The tools use meta-data4, the ISO duration5 and overload functions6 to replaces hundreds of other tools. The h w d’ y tools that: Convert any date/time format to any other date/time format and does all global timezones conversions. Compare any date/time format to any date/time format for all global timezones. Extract any combination of years-months-days-hours-days-seconds from any international or local global date/time format. Determine the difference of any combination of years-months-days- hours- minutes-seconds (including day-of-year and week-of-year date and the different fraction of time) for all ISO 8601 date and time formats for all global timezones. Do event calendar arithmetic (adding/subtracting/setting) any combination of years-months-days- hours- minutes-seconds that can also calculate holidays, meetings and start/stop of daylight. Support options for all ISO 8601 dates, times, fractions and time-zones and for all HR-XML options7, all other vendors options and even additional options. Support exceptions for all HR-XML “N K w ” d “N -A c ” d also “O f w/ d f w” w h h y “Ru -Qu ” EEE 754 f g . T d y’ The new tools auto-adjustable battery powered wrench Marvel of Marvels! The same instructions set does arithmetic for all 39 = (3 + 3×4 +3×4×2) combinations of date/time arithmetic as published by the International Organization for Standardization in the 1985 ISO 8601 Date Time Standard. ISO 8601 date types (formats): 1. Calendar ±YYYY-MM-DD 2. Day-of-year ±YYYY-DDD 3. Week-of–year ±YYYY-Www-D ISO 8601 time types (formats): 1. hh:mm:ss,ffffffffff fraction of seconds from 0 to 10 digits. (100 pico-seconds) 2. hh:mm,ffffffffffff fraction of minutes from 0 to 12 digits. 3. hh,ffffffffffffff fraction of hours from 0 to 14 digits. 4. ,ffffffffffffffff fraction of days from 0 to 16 digits (not a ISO 8601 time) ISO 8601 time-zone types 1. “Z” TC former GMT 2. ±00:00 time-zone offset from +14:00 to -12:00 ISO also has ±00 Awesome! The mixed-radix algorithm and the tools use the standardized binary integer register (IBM System 360), that is the fastest and the standardized floating point register (IEEE 754). It is designed to be language and database independent and therefore it can be implemented almost universally: On all existing 32-bit or 64-bit processors. For most existing programming languages that have the ability to call functions. For all database systems. 3 Remarkable! It has one standard internal computer format that has: Complete support of all ISO 8601 date/time standard formats both externally (people readable) and internally (computer readable/writeable). Complete support of ISO 8601 partial date/time, both truncation (like a birthday 6/18 or a holiday) and reduction (like year and month or year only as is necessary in summary reports). Complete support of HR-XML date/time xc d d ( k “ -K w ” d “N - c ”) and also overflow/underflow exceptions. Use of the ISO 3166 country/state codes for global timezone conversion (like IL,US).8 Complete support of the UNICODE Common Local Data Repository (CLDR) for internationalizing of dates, times, time-zones, currencies and languages.9 Complete “ u d- ” support of international and local formats. 10 It has support for duration: The complete ISO 8601 duration: o Calendar “±PnYnMnDTnHnMn.nS” o Week-of-year “±PnYnWnDTnHnMn.nS” o Day-of-year “±PnYnDyTnHnMn.nS” not a ISO duration “E C d Ag ” where small letters are required elements and capital letter are optional elements used if the element is present as d y h c . Th “=”, “+” “-“ f g d y h u c . “+P Y M D” qu f “+P+ Y+ M+ D”. o Calendar event algebra: “=±p=±ny=±nm=±n.nd=±T=±n.nh=±n.nm=±n.ns=±.nf” required. “=±p=±ny=±nm=±n.nd=±T=±n.nH=±n.nM=±n.nS=±.nF” time is optional only when time elements are present. It will not add/subtract if only a d k “yyyy- mm-dd” wh time with small letters would be an error. It Exist! It is Real! The enclosed reports show this date/time software is authentic and not vaporware. Report #1 shows all the different formats from the ISO 8601 date/time. No other date/time software can produce this report. Every external date/time you can read is represented with an internal date/time. Support of all ISO date/time formats with mixed-radix arithmetic will make application development faster, have lower cost, have a standardized date/time and permit innovation. The report uses the tools as follows: o Reads the syntax shown on line 2 from a table and uses the convert tool to take the external local date in the header (people readable) and converts it to an internal international date/time (the computer can read/write) with time zone conversion and puts it into an index table that sorts it (only possible because it has one date/time format). o Reads from the table the sorted line internal international date/time and uses the convert tool it convert it to an external date/time you can read. o For testing purposes, it uses the compare tool to compare the line item date to the date in the header with both the external date/time and the internal date/time. Report #2 shows all the different local calendar formats used throughout the world for commercial transactions. This date/time is the only date/time software that can remember all these local formats d “ u d- ” h f . o Reads the local syntax shown on line 2 from a table and uses the convert tool to take the external local date in the header (people readable) and converts it to an internal international calendar date/time with time zone conversion (computer readable/writeable/computable) and puts it into an index table that sorts it (only possible because it has one date/time format). The line date/time is retained in a round trip field (of 3 bytes) so latter the convert tool use the round-trip field to return the original format. This saves the programmer custom coding this feature. o Reads from the table the sorted line internal international date/time and uses the convert tool it convert it to an external date/time you can read. o For testing purposes, it uses the compare tool to compare the line item date to the date in the header with both the external date/time and the internal date/time. R #3 d h w d’ y “Calendar Event A g ”. o It was invented to determine the start/stop of daylight (summer time) throughout the world when it is based on the Gregorian calendar. However, it also works for the more difficult holidays which occur on a specific day-of-week and also meetings that might occur on specific day-of-week. o h h w d’ y dd g/ u c yc fy -months-days-hours-minutes-seconds and fractions. It also supports addition/subtraction of day-of-year and week-of-year and of all fractions of time. 4 Proof! Standards lack joint month and day arithmetic and therefore this proves x g fw c ’ d joint month-day arithmetic. The Internet Society ISOC Internet Calendaring and Scheduling specifications. 11 o “±P DT H M S” w h no years and no months. The CalConnect, the Calendaring and Scheduling Consortium. 12 o “±P DT H M S” w h y d h. The HR-XML Consortium Date and Time Recommendations 2007.13 o Specifies the need for duration but declines to specify details. The Java Joda Date Time (improvement on Java time). o “±P DT H M S” “±P Y M” w d ff , not simultaneous arithmetic. o Provides no details on how to get the correct answers. Excel spread sheet.14 o Can subtract days within a month, or days within a year or years but provides no procedure on how to get the correct answers for months-days calculations. The International Organization for Standardization ISO 8601 1985, 2004.15 o S c f “±P Y M DT H M S” u : D ’ c fy wh are the correct answers (IEEE 754 floating point does). D ’ c fy y w y c cu h c c w . Proof! Disruptive innovations often originate from small companies or new companies that have nothing to lose and that take risks that have caused the industry leaders difficulties. h 1950’ N VAC w h d f c u c y wh BM’ d d butter was punched card equipment. o Th Sc u d c d fu f BM’ u qu w h cc u d h c u h BM’ d h g h d h gh . h 1960’ h BM Sy 360 c h d f c u d by 1986 UNIVAC was in financial trouble. o The System 360 almost overnight made all other computers obsolete. o The System 360 architecture became the de facto industry standard. o Tom Watson Jr. had risked the life of the company, a 5 billion dollars gamble. The only greater investment was the Sg ’ c g . o In 1974, IBM announced Systems Network Architecture(SNA), a networking protocol for remote terminals that became the most widely used system for data processing until the Internet TCP/IP. IBM was one of the last c u h TCP/ P. Th ’ h f w w yc u c w 1% 1993, 57% in 2000 and 97% in 2007. h 1970’ D g Equ C (DEC) c h d -computer manufacturer, the second largest computer manufacturer, and by 1992 IBM was in financial trouble. o Digital achieved $14 billion in sales and was ranked among the most profitable companies and most innovative companies in the world. o It was an early leader in the server market. It was the first major company to implement the Internet TCP/IP. o However, while UNIX and C were developed on the DEC PDP computer, DEC was one of last companies to support UNIX and C. h 1980’ Su Equ c h d c -mini-computer company and by 1998 DEC was in financial trouble. o Sun Equipment was the leading company in supporting UNIX and C. o Sun once dominated the server market, however, it was the last company to support Linux, a free version of UNIX. o Linux has become the dominate operating system for Internet servers. It is used by Google, Amazon.com, Wikipedia and the US department of defense. h 1990’ c h d PC-micro-processor company and by 2010 Sun was in financial trouble. o Demand for PCs in the United States, Canada and Europe is slumping badly although still growing in other parts of the world. h 2000’ ARM H d g c h d ch d 95% d f c -phones and tablet processors. o There are more ARM processors in the world than all the other processors combined. In 2010, 5 billion ARM processors were produced. o Intel has developed the Atom processor to compete with the ARM processor. o Arm and IBM are collaborating in the development of the next generation of ARM processors. 5 Proof! Individuals often created software that becomes universal implemented on processors. The media is enumeration with the idea of the collective wisdom of the masses 16-- "several heads are better than one" and the ability of software factories with teams of programmers and a committee of designers that are able to churn out mass amounts of code However, they do not have universal implementation like: Ken Thompson was the architect of the UNIX kernel which is the main component of the UNIX/Linux operating systems. UNIX/Linux has been implemented on almost every processor from cell-phone to super-computers and game-computers to space-computers. It is used with 95% of the cell-phones, 95% of the Internet servers and 95% of the super-computer. The kernel optimizes the management of the system resources, like user applications, memory and peripherals. Operating systems developed by teams of programmers and committees of designers have been limited to one family of processors. Dennis Ritchie created the C programming language that has been implemented on almost every processor in the world. C/C++ so efficient that the UNIX/Linux and other operating systems are written in C/C++ replacing assembler languages. Individuals also have created Arithmetic Logical Units (ALU) that large companies can’ c or improve. Gene Amdahl designed the IBM System 360 Arithmetic Logical Unite (ALU) that is the central component of computers. o RCA, once one of the largest electronics corporations with huge research laborites and the inventor of television, developed the Spectra Series that were clones of System 360 and implemented virtual memory before the IBM 370. However, it lacked total compatibility and it went out of production by 1971. o Wang Laboratories that achieved annual revenues of $3 billion and employed over 33,000 people. It invented the first desktop calculator and dominated the early word processor market. In 1977 I created the Wang VS computer that was a clone of the IBM 370 but lacked totally compatible. It filed for bankruptcy protection in August 1992. o Amdahl Corporation, started by Gene Amdahl after he left IBM, introduced the Amdahl 470 in 1975 that were 100% compatible and "plug-compatible" with the System/370. It was cheaper and faster than the IBM 370 and achieved 24% market share in the high end field. It implemented UNIX before IBM. However Amdahl exited the market after IBM introduced the faster CMOS integrated circuits computers and the 64-bit zSeries in 2000 with which the Amdahl was no longer 100% compatible. The zSeries has the same instruction set as the IBM 370 and therefore can run IBM 370 software. William Khan, a U of C, Berkley professor, in the early 1980s designed the IEEE 754 floating point ALC h h d “g du u d f w”. o A yc u h dd ’ EEE 754 c . After 25 years only minor tweaks have been made to IEEE 754 but it still retains 1985 compatibility. Benefits! Of tools using the revolutionary mixed-radix date/time with a standard format in that they will: Aid software developers who rank their primary needs as: o 66% in delivering applications faster with new date/time. o 50% in reducing application development cost. o 40% in increasing standardization. o 40% in increasing innovation. These are averages based on the study at Gartner's Application Architecture, Development and Integration (AADI) summit in 2010 & 2011). Aid in solving user report deficiencies: o “CEO wh d yd h h gh .” F 2010 IBM study of 1541 executives in 60 countries and 33 industries. o “ h c fd c h T g z ' y d h f h y d k d c .” From a 2010 Gartner Group research study, a research and advisory firm that has an excellent reputation for analysis of IT trends. Aid in reducing operations cost: o Th G G u , “A y c c w d 35-40% of its programming budget to develop and , x c du d g wh u g f .“ o Enterprise operating departments are running 24×7 integrating data from different sources. Aid in the Fostering of Reuse and Agility through standards: o “Th g fc d w d g z f c g d d …” “Th d g duc c f efforts while also allowing the organization to reduce skills and training costs since there are fewer skill set u d.” Gartner 2008 Opposition! To the standards for binary integers and binary floating point. These standards are almost universally implemented in all processors from cell-phones to super-computers and from game-computers to shuttle- computers. Their universal implemented required adding new data types to the programming languages and 6 the database systems. However, these standards, that seem so natural today, only occurred over aggressive opposition of bright and strong willed people. In 1964 the IBM management almost up to the day of the announcement of the radical proposed System 360 received criticism of the 360 from groups within IBM that had developed f h w d’ successful computers. BM’ T W J .w “Th Sy /360 w h gg , k d c d , d g z d u f w k, u d d w d h w h g BM c u d ’ d .” H w h h w “wh k d ck, ck, ck.” B d standardizing many other things like the 8-bit character, it standardized binary integers to 8-bits, 16-bits and 32-bits and today 64-bits using 2’ c h c g h u u 1’ c h c. In 1985 the IEEE 754 standard only resul d f 8y h “f u h-to-z ” d g u d h f c u d h d c c d “g du -u d f w” h d d x c u . It was disagreement that was described as like a religious war that went on year after year. Only when a graduate student from the U of C, B k yd d “g du -u d f w” h w f h “f u h-to-z ” d f h fd z c h d implemented the IEEE 754 standards did the committee get the necessary votes to make it official. Circumstances! A series of chance event for one person resulted in the invention of the mixed-radix algorithm: H h d d d wh dh “ fy ud ’ k h g, f x d fy uc ’ fx d ’ c .” He had a math instructor who liked to point out the problems that h d d. H c u d ’ h ch g d would often spend hours until he solved them and would even spend time finding a simpler solution so that the math instructor c ud ’ h wh h better way. He discovered the difficult problem often required a different approach from all the other problems. He discovered while getting his math major he was an applied mathematician17 and not a theoretical mathematician and therefore: o He took courses like the theory of numbers that studied the properties of binary numbers and also other base numbers. o He took a course in computer mathematics that is different than the normal binary arithmetic taught in schools. o He got a major in operations research (mathematical economics) which is applied mathematics to business problems. o He was interested in calendrical mathematics that is a field of applied mathematics. He had a college professor that made him a computer fanatic. The first problem the professor gave in mathematical economics (operations research) was not solved by anyone after 12 to 24 hours. The professor than took everyone into the computer room and in minutes the computer printed out the correct answer. He had a college course in the design of a computer arithmetic logical unit (ALU). The course was unusual because the professor went into his ideas of how by adding 15% to 20% more circuitry to the binary register, it could also do decimal, base-10, arithmetic. The dual use of registers for both binary and decimal arithmetic is now considered obsolete and therefore the design is not explained on the Internet. A programmer who has a good understanding of the ALU can write programs that run faster than other programmers. Although he had dual majors in mathematics and mathematical economics and dual minors in statistics and in engineering physics, therefore he could understand the electrical circuitry of computer registers. He had years of assembler language programming experience. A good assembler programmer can write programs in high level C/C++ and Java that run faster than other programmers. Assembler language is now considered obsolete by most schools and therefore they no longer teach it. He was programmer consultant who earned the reputation of being able to design and program systems where others had failed and if an application was running slow he could usually cut the run time in half. He gets a high from programming. He can program 12 to 16 hours six days a week. He had the persistent to experiment for 10 years and 5 different versions (with many modifications) before finally creating the ultimate mixed-radix algorithm and the best tools. Creativity! “CEOs now realize creativity trumps other leadership characteristics”, the conclusion of the 2010 an IBM study. Recommendations Implementation “D fy c x yw hc y.” Invented the mixed-radix algorithm. “C u g h u qu .” Used an exponent for precision. “Ac d u c y.” Experimented with 5 versions before achieving perfection. “T k k …” It was a 10 years investment of time and money. “L y d h ‘ d-and- u …” Created simple and more powerful tools. The United States is quick to embrace and pay millions for people and software that entertains. Ultimate Date/Time will improve the insight of marketing trends for manufacturing company beside help to reduce production cost. What is of greater benefits to United States, entertainment or improved manufacturing? From the Wikipedia William Edwards Deming (October 14, 1900 – December 20, 1993) was an American consultant known for his work in Japan. From 1950 onward, he taught top Japanese management how to improve product quality through statistical methods. He is regarded as having had more impact upon Japanese manufacturing and business than any other individual. Despite being considered a hero in Japan, he was only just beginning to win recognition in the U.S. at the time of his death. 7 Andy Grove of Intel and Judy Estrin of Cisco say “Th y fS c V y d h S ch du y k.” Business Week of January 12, 2009. Andy Grove, “h d y c h g g h .” “M y W 2.0 c u f g h dw .” Judy Estrin, in her book, Closing the Innovation Gap, says the US must: Have a renewed commitment to basic research. Have a shift from venture capitalist to bolder bets. Have grander ambitions. Previous attempts at improving date/time cobbled modifications to existing date/time formats and resulted in an increase in chaos. Oracle in 2001 and Microsoft in 2008 added almost 25 formats each while only adding the incremental improvement of variable precision and different timezones. Eureka! A “Eu k ” u d h f h x d-radix algorithm. It uses weird numbers that are unrelated to common sense or rational intelligence that tricks the computer base-2 arithmetic into doing mixed base date/time arithmetic. If the code was shown to a programmer and told it did date/time arithmetic, they would think it was a hoax. The algorithms have: A u g u fc u uc d h f h w d’ f . Th CP u g ½ ¼ f h next fastest, the C/C++ date/time. The instructions are convoluted, tricky, cryptic, and intricate but incorporate a flair of eloquence. The ability to produce the correct results seems almost magical because the intermediate arithmetic have bizarre values. The way it computes this weird values flout logic. It tricks the base-2 computer register (special computer memory that can do arithmetic) into doing concurrent arithmetic in: Base-10 for years Base-12 for months Base-28, 29, 30 or 31 for days Base 24 for hours Base-60 for minutes and seconds Base-10 for fractions of seconds Since month-day arithmetic is simultaneous, it is able to duplicate human month-day arithmetic.18 The mixed-radix algorithm lacks the rational of even zero and calculus and therefore will prove more difficult for others to duplicate. In 2500 BC the Sumerians base-60 (sexagesimal) numbering system included the concept of zero. The Egyptians, the Greeks, the Romans and the western world did not have a zero until the Italian mathematician Fibonacci (c.1170–1250) introduced Arabic numbers that contained the zero. The zero is illustrated if an electronic clock is set to 24 hours time, the start of the day is hour zero. However, when the clock is set to 12 hour time the start of the day is 12am (like Egyptian, Greek and Roman time) rather than hour zero. Also, although the Greeks understood some calculus concepts it was not accurately developed until the 1600s when Arabic numbers had come into common usage in Europe. The mixed-radix algorithm cannot be developed by a electrical engineer who only understand the ALU, or an assembler programmer who only understand machine instructions, or a mathematician who only understand number theory or a team made up of these three people. The Eureka insight is described as the process when a previously seems impossible, an unsolvable puzzle, suddenly becomes clear and obvious. The experience usually requires the problem solver to come upon an impasse, where he becomes stuck and even though he may seemingly have explored all the possibilities, is still unable to find a solution. However, suddenly and unexpectedly a break in mental fixation results in the answer. d h , u “h k u d h x”. Th gh f ccu w h break in mental fixation, allowing the solution to appear transparent and obvious. This insight into the mixed-radix algorithm occurred at 4pm when consideration was being given to abandon the date/time project because the existing date/time arithmetic was proving much too slow to implement the large date range and a very small time precision necessary for the best date/time. Several years latter it took longer to relearn the algorithm than it took to create it. If something happened to me, I wonder if anyone could reinvent this mixed-radix algorithm necessary for these date/time tools. Its invention was the result of a series of chance events: 8 H h d d d wh dh “ fy ud ’ k h g, f x d fy uc ’ fx d ’ c .” H h d h uc wh k d u h h h d d. H c u d ’ h ch g d w uld often spend hours until he solved them and would even spend time finding a simpler solution so that the math instructor could ’ show him the better way. He discovered that the most difficult problems in a lesson often required a different approach from all the other problems in the lesson. 19 He discovered while getting his math major that he was an applied mathematician and not a theoretical mathematician and therefore: o He took courses like the theory of numbers that studied the properties of binary numbers and also other base numbers. o He took a course in computer mathematics that is different than the normal binary arithmetic taught in schools. o He got a major in operations research (mathematical economics) which is applied mathematics to business problems. o He was interested in calendrical mathematics (date and time arithmetic) that is a field of applied mathematics. He had a college professor that made him a computer fanatic. The first problem the professor gave in mathematical economics (operations research) was not solved by anyone after 12 to 24 hours. The professor than took everyone into the computer room and in minutes the computer printed out the correct answer. All of sudden computers were fantastic. He had a college course in the design of a computer arithmetic logical unit (ALU). The course was unusual because the professor went into his ideas of how by adding 15% to 20% more circuitry to the binary register, it could also do decimal, base-10, arithmetic. The dual use of registers for both binary and decimal arithmetic is now considered obsolete and therefore the design is not explained on the Internet. He was a programmer, who because he had a good understanding of the ALU, could write programs that run faster than other programmers. Although he had dual majors in mathematics and mathematical economics and dual minors in statistics and in engineering physics, therefore he could understand the electrical circuitry of computer registers. He had years of assembler language programming experience. A good assembler programmer can write programs in high level C/C++ and Java that run faster than other programmers. Assembler language is now considered obsolete by most schools and therefore they no longer teach it. He was programmer consultant who earned the reputation of being able to design and program systems where others had failed and if an application was running slow he could usually cut the run time in half. His experience as a consultant on the Chicago commodity exchange had exposed him to the date/time chaos and therefore at retirement he decided to fix it. He gets a high from programming. He can program 12 to 16 hours six days a week. He had the persistent to experiment for 10 years and 5 different versions (with many modifications) before finally creating the ultimate mixed-radix algorithm and the best tools. Spread these among several people and the mixed-radix algorithm would not have been invented. Borrowing! The best of the existing date/time software was incorporated into the new tools.20 Get Smart! The industry must Get Smart and standardize with Ultimate Date/Time and use the w d’ most advanced tools as weapons by CONTROL to wipe out KAOS.21 1 Commutative, meaning that order does not matter, and associative, meaning that when one adds more than two numbers, order in which addition is performed does not matter. 2 Month and days arithmetic is not commutative (meaning that order does not matter), therefore the order does matter. When adding months and days humans use common sense to get the right answers but has been impossible for computers. Humans Computer+D+M Computer+M+D Humans Computer-D-M Computer-M-D 2011-06-30 2011-06-30 2011-06-30 2011-07-31 2011-07-31 2011-07-31 +01+01 +01 +01 -01-01 -01 -01 2012-07-31 2011-07-01 2011-07-30 2011-06-30 2011-07-30 2011-06-30 +01 +01 -01 -01 2011-08-01 2011-07-31 2011-06-30 2011-06-29 Humans Computer+D+M Computer+M+D Humans Computer-D-M Computer-M-D 2011-05-31 2011-05-31 2011-05-31 2011-07-01 2011-07-01 2011-07-01 +01+01 +01 +01 -01-01 -01 -01 2012-07-01 2011-06-01 2011-06-30 2011-05-31 2011-06-30 2011-06-01 +01 +01 01 -01 2011-07-01 2011-07-01 2011-05-30 2011-05-31 Note! There is no way to know what is the correct subtraction, when days should be first or months should be first. Also, without custom coding, traditional software is an hour off at the start/stop of daylight. When adding 1 month and subtracting 1 month with a date like 2011-05-31, neither humans nor computers can get the correct answer. After subtraction and addition they will have 2011-05-30. 9 3 Cylindrical calculation is concerned with date/time calendar calculation an area of applied mathematics. Some examples of calendrical calculations: The number of days between two dates. The date of a religious holiday, like Easter (the calculation is known as Computes) or Passover, for a given year. Converting a date between different calendars. For instance, dates in the Gregorian calendar can be converted to approximate dates in the Islamic calendar with the Kuwaiti algorithm. Calculating the day of the week. 4 Metadata is "data about data" and is the specification of the date/time data structure to designate: The date is: Fiscal date Calendar yyyy-mm-dd internal yyyymmdd Day of year yyyy-ddd internal yyyy0ddd Week-of-year yyyy-Www-d internal yyyyww0d Partial date The time is: Fraction of seconds hh:mm:ss,ffffffffff internal hhmmssffffffffff Fraction of minutes hh.mm.ffffffffffff internal hhmmffffffffffff Fraction of hours hh.ffffffffffffff internal hhffffffffffffff Fraction of days .ffffffffffffffff internal ffffffffffffffff The precision is an exponent. Partial time is a bit-array where bits designate fields present y-m-d-h-m-s-f 5 Durations represent mixed-radix date by using the format P[n]Y[n]M[n]DT[n]H[n]M[n.n]S or P[n]W where the [n] is a value for each of the date and time elements that follow the [n]. These functions support up to 16 whole and fractional digits (The ISO standard does not specify any number). This software has expanded the capabilities of the duration format with the ability to set/add/subtract each field (=±P=±nY=±nM=±n.nDT=±n.nH=±n.nM=±n.nS=±.nF) rather than requiring as many as three separate steps. Following is P is the duration designator called "period". Y is the year designator. M is the month designator. W is the week designator. D is the day designator. T is the time designator. H is the hour designator. M is the minute designator. S is the second designator. The expanded designators and where small letters are required and capitals are optional. .nf is fraction of time. dm is the day of the month. dw is the day of the week. dy is the day of the year. wm is the week of the month. wy h w k f h y qu “w”. For example, "P3Y6M4DT12H30M5S" represents duration of "three years, six months, four days, twelve hours, thirty minutes, and five seconds". Date and time elements including their designator may be omitted if their value is zero, and lower order elements may also be omitted for reduced precision. For example, "P23DT23H" and "P4Y" are both acceptable duration representations. "PT36H" could be used as well as "P1DT12H" for representing the same duration. 6 Orthogonal functions allow a programmer to remember only a few instructions. The use of meta-data and the ISO duration mixed-radix simplify the number of functions. 7 The HR-XML Date and Time Recommendations options and exceptions. Data Type Basic Format Time Zone not Known Not Applicable Required Allowed Allowed DateType YYYY-MM-DD(Z | ±hh:mm) Yes DateNkType YYYY-MM-DD(Z | ±hh:mm) Yes Yes DateNaType YYYY-MM-DD(Z | ±hh:mm) Yes Yes DateNkNaType YYYY-MM-DD(Z | ±hh:mm) Yes Yes Yes LocalDateType YYYY-MM-DD LocalDateNkType YYYY-MM-DD Yes LocalDateNaType YYYY-MM-DD Yes LocalDateNkNaType YYYY-MM-DD Yes Yes TimeType hh:mm:ss(Z | ±hh:mm) Yes TimeNkType hh:mm:ss(Z | ±hh:mm) Yes Yes TimeNaType hh:mm:ss(Z | ±hh:mm) Yes Yes TimeNkNaType hh:mm:ss(Z | ±hh:mm) Yes Yes Yes 10 LocalTimeType hh:mm:ss LocalTimeNkType hh:mm:ss Yes LocalTimeNaType hh:mm:ss Yes LocalTimeNkNaType hh:mm:ss Yes Yes DateTimeType YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) Yes DateTimeNkType YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) Yes Yes DateTimeNaType YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) Yes Yes DateTimeNkNaType YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) Yes Yes Yes LocalDateTimeType YYYY-MM-DDThh:mm:ss LocalDateTimeNkType YYYY-MM-DDThh:mm:ss Yes LocalDateTimeNaType YYYY-MM-DDThh:mm:ss Yes LocalDateTimeNkNaType YYYY-MM-DDThh:mm:ss Yes Yes AnyDateTimeType YYYY-MM-DD Optional YYYY-MM-DD(Z | ±hh:mm) YYYY-MM-DDThh:mm:ss YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) AnyDateTimeNkType YYYY-MM-DD Optional Yes YYYY-MM-DD(Z | ±hh:mm) YYYY-MM-DDThh:mm:ss YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) AnyDateTimeNaType YYYY-MM-DD Optional Yes YYYY-MM-DD(Z | ±hh:mm) YYYY-MM-DDThh:mm:ss YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) AnyDateTimeNkNaType YYYY-MM-DD Optional Yes Yes YYYY-MM-DD(Z | ±hh:mm) YYYY-MM-DDThh:mm:ss YYYY-MM-DDThh:mm:ss(Z | ±hh:mm) 8 ISO 3166 standard facilitates the exchange of goods and information. All national postal organizations in the world exchange international mail between themselves in containers carrying ISO 3166-1 codes for identification of the country of destination. In machine-readable passports the three letter code of ISO 3166-1 is used to determine the nationality of the user (ISO/IEC 7501-1). Currencies are identified by a code based on the ISO 3166-1 which identifies them in international transactions (ISO 4217). The International Securities Identification Number (ISO 6166) is a system which allows precise identification of shares issued in one country but traded internationally. The Internet domain name system uses ISO 3166-1 alpha-2 codes to define country-coded Top-Level Domains (ccTLDs), e.g., for the countries like; ".fr", ".za", ".au", ".br", or ".jp". 9 The Unicode CLDR provides support for the world's languages, with the largest and most extensive repository of locale data that is used by computer manufacturers and other companies to internationalize and localize software such as: For formatting of local dates, times, and time zones. For formatting local numbers and currency values. For sorting local text. For choosing local languages or international country names. 10 F W k d , “Th round-trip is commonly used in document conversion particularly involving markup languages such as XML and SGML. A successful round-trip consists of converting a document in format A (docA) to one in format B (docB) and then back again f A (d cA′). More generally it means converting from any data representation and back again, including from one data structure to another (like date/time). 11 Duration (RFC 5545, Section 3.3.6) Note that unlike [ISO.8601.2004], this value type doesn't support the "Y" and "M" designators to specify durations in terms of years and months. 12 Duration (RFC 5545, Section 3.3.6) Note that unlike [ISO.8601.2004], this value type doesn't support the "Y" and "M" designators to specify durations in terms of years and months. 13 Hr-XML Consortium Date Time Data Types, Recommendation, 2007 April 15 1.3.3 Items Outside of Design Scope R g “du f ” (2 d y , 4 h u , 13 u )w dd d h f h d cu . 14 Excel functions. Excel DAY Function The DAY function can be used to find the number of days between two dates. It will not correctly subtract two dates that are in different months or years. Excel MONTH Function The MONTH function can be used to find the number of days between two dates. It will not correctly subtract two dates that are in different years. Excel YEAR Function The YEAR function can be used to subtract two dates to find the number of years between the dates. 11 15 Source Wikipedia on ISO 8601 Date and Time Formats Durations are a component of time intervals and define the amount of intervening time in a time interval. They should only be used as part of a time interval as prescribed by the standard. Durations are represented by the format P[n]Y[n]M[n]DT[n]H[n]M[n.n]S or P[n]W as shown to the right. In these representations, the [n] is replaced by the value for each of the date and time elements that follow the [n]. Leading zeros are not required, but the maximum number of digits for each element should be agreed to by the communicating parties. The capital letters P, Y, M, W, D, T, H, M, and S are designators for each of the date and time elements and are not replaced. P is the duration designator (historically called "period") placed at the start of the duration representation. Y is the year designator that follows the value for the number of years. M is the month designator that follows the value for the number of months. W is the week designator that follows the value for the number of weeks. D is the day designator that follows the value for the number of days. T is the time designator that precedes the time components of the representation. H is the hour designator that follows the value for the number of hours. M is the minute designator that follows the value for the number of minutes. S is the second designator that follows the value for the number of seconds. For example, "P3Y6M4DT12H30M5S" represents a duration of "three years, six months, four days, twelve hours, thirty minutes, and five seconds". Date and time elements including their designator may be omitted if their value is zero, and lower order elements may also be omitted for reduced precision. For example, "P23DT23H" and "P4Y" are both acceptable duration representations. To resolve ambiguity, "P1M" is a one-month duration and "PT1M" is a one-minute duration (note the time designator, T, that precedes the time value). The smallest value used may also have a decimal fraction, as in "P0.5Y" to indicate half a year. This decimal fraction may be specified with either a comma or a full stop, as in "P0,5Y" or "P0.5Y". The standard does not prohibit date and time values in a duration representation from exceeding their "carry-over points" except as noted below. Thus, "PT36H" could be used as well as "P1DT12H" for representing the same duration. 16 The Wisdom of Crowds: Why the Many Are Smarter than the Few and How Collective Wisdom Shapes Business, Economies, Societies and Nations, published in 2004, by James Surowiecki. 17 From the Wikipedia Applied mathematics is a branch of mathematics that concerns itself with mathematical methods that are typically used in science, engineering, business, and industry. Thus, "applied mathematics" is a mathematical science with specialized knowledge. The term "applied mathematics" also describes the professional specialty in which mathematicians work on practical problems; as a profession focused on practical problems, applied mathematics focuses on the formulation and study of mathematical models. In the past, practical applications have motivated the development of mathematical theories, which then became the subject of study inpure mathematics, where mathematics is developed primarily for its own sake. Thus, the activity of applied mathematics is vitally connected with research in pure mathematics. 18 Month and days arithmetic is not commutative (meaning that order does not matter), therefore the order does matter. When adding months and days common sense allows humans to get the right answers but has been impossible for computers. Humans Computer+D+M Computer+M+D Humans Computer-D-M Computer-M-D 2011-06-30 2011-06-30 2011-06-30 2011-07-31 2011-07-31 2011-07-31 +01+01 +01 +01 -01-01 -01 -01 2012-07-31 2011-07-01 2011-07-30 2011-06-30 2011-07-30 2011-06-30 +01 +01 -01 -01 2011-08-01 2011-07-31 2011-06-30 2011-06-29 Humans Computer+D+M Computer+M+D Humans Computer-D-M Computer-M-D 2011-05-31 2011-05-31 2011-05-31 2011-07-01 2011-07-01 2011-07-01 +01+01 +01 +01 -01-01 -01 -01 2012-07-01 2011-06-01 2011-06-30 2011-05-31 2011-06-30 2011-06-01 +01 +01 01 -01 2011-07-01 2011-07-01 2011-05-30 2011-05-31 Note! There is no way to know what is the correct subtraction, when days should be first or months should be first. Also, without custom coding, traditional software is an hour off at the start/stop of daylight. When adding 1 month and subtracting 1 month with a date like 2011-05-31, neither humans nor computers can get the correct answer. After subtraction and addition they will have 2011-05-30. 19 From the Wikipedia Applied mathematics is a branch of mathematics that concerns itself with mathematical methods that are typically used in science, engineering, business, and industry. Thus, "applied mathematics" is a mathematical science with specialized knowledge. The term "applied mathematics" also describes the professional specialty in which mathematicians work on practical problems; as a profession focused on practical 12 problems, applied mathematics focuses on the formulation and study of mathematical models. In the past, practical applications have motivated the development of mathematical theories, which then became the subject of study in pure mathematics, where mathematics is developed primarily for its own sake. Thus, the activity of applied mathematics is vitally connected with research in pure mathematics. 20 At the start of this date/time project, the best features were selected from the different data/time software. Oracle and IBM use field based date/time because it is fastest and simplest for database retrieval, sorting and indexing. BM’ f y xw d d x d df c d d . C/C++/UNIX date/time options were improved for speed. BM’ c d w x d d u d h u . O c ’ 12/24 h u w c ud d. Microsoft fraction of time options was included. Exc uch “N -K w ” d “N - c ”w c ud dw f h HR-XML date/time recommendations. IEEE 754 type exponent was used for precision. IEEE 754 type of special bits configurations was used exceptions. IEEE 754 ability to run-quite on exceptions was included. The structure of this date and time has similarities to Oracles date and time, however The year is 10,000 compliment rather than Oracle’s 100 complement. The year 1999 19_99 wh O c ’ 199_199. The time is cardinal rather than Oracle’ ordinal. Th 23:59:59 23_59_59 wh O c ’ 24_60_60 d 00:00:00 00_00_00 wh O c ’ 01_01_01 F c f d c h h O c ’ y. Therefore the new time requires an extra byte but it supports Network Time P c ’ 10 f c dg f while O c ’ is 9 digits. Fraction of time supports fraction of minutes, fraction of hours and fraction of days while Oracle only supports fraction of seconds. It has a prefix byte (meta-data) that identifies the ISO date/time and supports day-of-year and week-of-year, fraction of minutes, fraction of hours and fraction of days. It has a time-zone bye were hours that are excess 115 with unique bits for no time zone or UTC time therefore it requires only 1 format while Oracle (and Microsoft) requires 3 formats for each precision. It can support abbreviated formats. It has a suffix byte that identifies the precision using an exponent and therefore one format can support precision of C/C++, Java, IBM or any of the variable precisions of Oracle and Microsoft that require a couple of dozen formats. 21 Get Smart was an one of the longest running American comedy television series that satirizes James Bond and Inspector Clouseau. CONTROL was a secret U.S. government counter-intelligence agency based in Washington, D.C. Its nemesis was KAOS, "an international organization of evil", which for tax reasons was a Delaware Corporation. 13

DOCUMENT INFO

Shared By:

Categories:

Tags:

Stats:

views: | 0 |

posted: | 10/5/2012 |

language: | English |

pages: | 13 |

OTHER DOCS BY fbwbT101

How are you planning on using Docstoc?
BUSINESS
PERSONAL

By registering with docstoc.com you agree to our
privacy policy and
terms of service, and to receive content and offer notifications.

Docstoc is the premier online destination to start and grow small businesses. It hosts the best quality and widest selection of professional documents (over 20 million) and resources including expert videos, articles and productivity tools to make every small business better.

Search or Browse for any specific document or resource you need for your business. Or explore our curated resources for Starting a Business, Growing a Business or for Professional Development.

Feel free to Contact Us with any questions you might have.