Signaloid Ux Hardware API
Uncertainty-tracking computer hardware architectures track statistical probability distributions associated with machine state, transparently to the execution of applications. Uncertainty-tracking computer architectures however require some mechanism to get uncertainty distribution information into machine state as well as mechanisms to query that uncertainty distribution information.
The Signaloid Ux Hardware (UxHw
) API allows software to
interact with uncertainty-tracking computer hardware architectures without
requiring knowledge of the underlying uncertainty representation. The API only
provides a mechanism to insert uncertainty information into
uncertainty-tracking microarchitectures and to indirectly query uncertainty
information from such microarchitectures. Because uncertainty-tracking
microarchitectures can track uncertainty probability distributions transparent
to the execution of programs, UxHw does not need to provide any API functions
for operations such as arithmetic and logic on values: uncertainty-tracking
microarchitectures transparently propagate probability distributions while
performing arithmetic and logic in legacy applications including pre-compiled
binaries.
API Naming Convention
The API function names follow a {namespace}{adverb}{verb}
or
{namespace}{adjective}{noun}
format. Each API function begins with the
namespace prefix UxHw
. This is followed by the additional namespace classifier
Float
or Double
. The final part of the API function name is a verb or noun
which indicates the main action (verb) or the main property (noun) (e.g., the
verb Sample
in UxHwFloatSample
and the noun
DistFromMultidimensionalSamples
in
UxHwFloatDistFromMultidimensionalSamples
).