Technical MetaNumber Rules and Conventions July ...

advertisement
Technical MetaNumber Rules and Conventions
July 2015
Metanumber Basic Requirements and Features:
1. A metanumber is a mathematical expression that includes a numerical value, its units, its numerical accuracy, and its
defining metadata. Requirements:
2. It is to be easily readable by both humans and computers,
3. It is to be consistent with international scientific units, the SI metric system with automatic management of
dimensional analysis including other units used in specific subject domains, (especially the 2015 NIST new
foundation based upon fundamental constants),
4. It is to provide automatic computation and management of numerical uncertainty,
5. It is to support a defining metadata standard for the unique representation each number and its exact meaning
through metadata descriptors (tags),
6. It is to allow the linkage of unlimited metadata qualifiers and tags without the burden of an associated data transfer
or additional processing,
7. It is to be sufficiently flexible to evolve and encompass existing domain standards that are currently in use.
8. It must also support computational collaboration and sharing among user groups,
9. It is to be compatible with current standards in computer coding, and
10. It is to provide an algorithm to convert, as best possible, current nonstandard representations of tabular numerical
data to this standard, until such time as data is published in this standard.
11. This standard should also support the analysis of a number’s complete historical computational evolution,
12. It should allow optional extensions to the fundamental SI base units as well as user defined units,
13. It is to be configured as a module or function that can be included in other systems.
Numerical Accuracy:
1. Numerical accuracy is automatically generated and tracked based upon the number of significant digits in values
that contain a decimal point “.” such as 3.456e9 which will be written as a “ value +/- uncertainty “
2. Numbers that are to be treated as exact are to have any decimal point removed and absorbed by the exponent in
scientific notation so the previous number, to be exact, would be 3456e6 .
3. Unit conversions and internal constants are treated as exact
4. All aspects of numerical uncertainty are managed automatically.
Units:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Are variable names which are parts of valid mathematical expressions: 3*kg+2.4*lb
Are single names: ouncetroy not troy ounce.
Are lower case with only a…z, _ (interior), 0-9 characters: mach, c, m3, s_2, gallon
Never have superscripts or subscripts or with any information contained in font changes: m3 not m3
Never have Greek or other alphabetic characters or special symbols: ohm not hb not ħ, pi not π.
Use only lower case not upper case for all characters: kelvin not Kelvin, ampere not Ampere…
Are defined with nested sequential definitions in terms of the basic SI units: m, kg, s, a, k, cd
Use singular spelling and not plural: foot not feet, mile not miles,
Include all prefixes as separate words, compounded any way: micro*thousand*nano*dozen*ft
Evaluation of expressions always results in SI (metric) units except with (expression) ! (units desired): c ! (mile/week)
Dimensional errors are trapped: 3*kg + 4*m gives error
A user can use a past result with the form: [my_423] where 423 is the sequence number of a previous result
13. Four new units are optionally available: bit, b; person, persons, p; dollar, usd, d; flop (floating point operation)
14. Users can define units in a jointly shared table
Metadata:
1. Every metanumber is standardized in a table structure of 0, 1, 2, … dimensions with a unique name: [table name_ row
name _ column name…] where these unique values (indices) indicate the exact location of the metanumber (its full
internet path if not on the default server). This serves to give every metanumber a unique name. If the metanumber
is on a different server from the default then the path is [server name_directory path _ table name_ row name _ column
name…]. Because every possible metanumber has a unique name when standardized, the evolutionary origin of all
values is traceable an unambiguous. It is this path name that uniquely names every numerical metanumber and it
is the metanumber values in the associated table, row, and column that exactly describe the value.
2. Any metanumber can be multiplied by the structure {var1=val1 | var2=val2|…} for example 6.4533e4*kg*m_3*{depth=34.3*m}
3. Likewise all past results of each user are archived in a table as: userid, seq#, datetime, input string, result, unitid, subject. It
can be accessed as [my_423] which returns the result. The optional subject is set (see >> help for instructions)
4. All metadata that is contained in the associated table, a row, or a column with a referenced metanumber can be
retrieved.
5. Thus every value is (a) keyed in by a user, or (b) is retrieved from a past expression, or (c) is retrieved from a
standardized metanumber table.
6. Any defining metadata for keyed values must be inserted as with {…….} at the time of data entry.
Computational Documentation:
1. If an input is preceded by the “#” symbol then it is not processed but that text is stored in the output result. This
allows one to document ones work. This also pertains to collaborations where each member of the team using the
same subject can insert comments to clarify their calculations.
Special Values:
1. {value |…} without the presence of “var1 = …” implies that the value applies to the number being multiplied.
2. Thus {. |…} or just {.} alone means the value is missing. In this case no evaluation will occur and the result will be set
to missing {.}.
3. Also {?|….} or just {?} means that something is questionable about the value. Evaluation occurs normally but {?} is to
be multiplied by the output.
MetaNumber Standardized Data Tables are to be used to automatically find and use reference numerical data:
1. MN Tables are to be Comma Separated Value (CSV) arrays of information thus viewable in Excel spreadsheets.
2. Row one is to consist of a list of variables that apply to the table as a whole: <MN>, table short name, table full name, origin
usually web sites), author, author email, date created, security codes, remarks, *units, and copyright .
3. Row two is to consist of the values for these variables.
4. The first row (usually row three) that begins in column 1 with %% will contain unique (index) names for the columns
which follow and the subsequent values in column 1 are to contain unique (index) names for that associated row.
If a column or row contains no MN values but only metadata (web links, conditions, …) then that name is to be
preceded by a “%” symbol. If the metadata in that column or row is a unique metadata index then it is to be
preceded by “%%” to indicate that the index is unique and can be used to identity that row or column.
5. Column one, like the first %% row, is to be a unique metanumber index to identify all the rows of metanumbers.
6. If an element has no % symbol preceding the index name in either the associated row or column, then that cell
contains a standardized metanumber. Conversely, if an element has a % symbol prior to the name, then the cell will
contain some type of information pertaining to the row or column that is metadata.
7. Every standardized metanumber value is to consist of a value*units optionally followed by *{var1=val1|var2=val2|… }
metadata pertaining to just that cell}. The value is treated as an uncertain number if a decimal is present in the
value and treated as exact if there is no decimal.
8. Certain critical tables are already standardized. Software is under development to extract tabular data from web
sites and to standardize it in metanumber form for reading.
Special Functions:
1. DC() and DF(): Temperature must always be in Kelvin for computations to work correctly and not result in negative
volumes and other anomalies. Yet we still think in units of Fahrenheit and Celsius. So we have devised two functions
that give human readability but return Kelvin when evaluated: DC(23) refers to 23 degrees Celsius but when
evaluated gives the equivalent in Kelvin. Likewise DF(81) is 81 degrees Fahrenheit but returns that temperature in
Kelvin.
2. Metanumber table values are retrieved with the ‘function’ [table name_ row name _ column name…] such as [e_gold_density]
3. Metanumber past results can be retrieved using [my_181] which retrieves the result of that users sequence number 181.
Collaboration:
1. The subject name persists for any user who sets it until it is removed
2. Collaboration can be achieved when several users enter the same exact subject name. Other users, as permitted by
the subject creator, are allowed to read all users transactions when that subject is active thus allowing
collaboration.
User Units:
1. Users can add to a table of shared units or constants available to all users . These names and values are stored in a
commonly available table and then utilized like all other tables in the form [userid_unitname].
Core Tables for MetaNumber:
1. The archive of all user inputs for evaluation: username, seq#, datetime, input string, result, uid, subject
Download