Business Systems Research Products Philosophy

Graeme Robertson's Best Customers

What a pleasure and privilege it is to write computer programs for appreciative clients. How satisfying it is to create systems for people who actually help you to understand their requirements and take the time and trouble to assist, inform and support you during the creative process of writing something specially for them. Thank you Kodak.


  BelEve is Beautiful  


The BelEve application helps you to know what to believe about things concerning which you only have limited information. For example, water companies have lots of pipes under the ground but they can't dig them all up to discover their condition. Likewise, telephone companies have miles of cables of different types and ages and conditions that they would like to know as much as possible about. Similarly with roads and railtracks and bridges. The list of partially understood assets whose condition would be better known is endless.

BelEve takes the data you have and builds a statistical model, including sets of equations that relate base quantities to yield derived quantities of interest. As new data becomes available, the model is updated using linear Bayesian algorithms to yield a new model that has incorporated correlated modifications that thereby modify exisiting beliefs. In this way prior beliefs are influenced by new knowledge and the overall understanding is incrementally improved. This system was designed by World-renouned Bayesian statistician Tony O'Hagan and includes a unique variance learning algorithm which incrementally increases the accuracy of detailed error handling.

BelEve is supplied as a .NET assembly in a DLL. This means that a programmer who knows how to make use of methods and properties made available through a .NET assembly can prepare standard (large) files of data and then apply exact calculations, simulations and updates through BelEve methods, and obtain standard output files from the reporting module.

  • Specification of Priors
  • Bayesian Updating
  • Exact Calculations
  • Simulation Calculations
  • Variance Learning
  • Multiple Reporting


  Space is Gigantic   


Space is an application that is designed to accomodate inherently multi-dimensional data in an inherently multi-dimensional manner. Excel is inherently 2-dimensional. Understanding 3 dimensions is not too hard either because we live in a 3-dimensional world and therefore can easily imagine a stack of worksheets, but 4, 5 or 6 dimensions is hard to imagine without experience. Space allows up to 15 dimensions which very few applications have a need for, but 3 or 4 is very common.

Anyone who has prepared high-level reports for a large company will know that the number of combinations for displaying this against that can become very large. When the data structure is understood in terms of the basic underlying dimensions, and is fed into Space accordingly, then all the various reports of this against that fall out naturally. For example, consider the accounts of a large manufacturing company such as Apple Inc. You may have their product, the iPhone 6, made perhaps in Vietnam, in November 2016, costing $20 to manufacture, sold to you in the UK for £500. There you have a couple of numbers that fit into a 5 dimensional scheme of Product against Manufacturing Country against Date against Sales Country against Accounting Items, with the possibility of a 6th Currency dimension. Apple UK might then want a report of total of all sales of all products made in Vietnam in 2016. That's what Space can do for you, easily.

Space is designed like a classic Microsoft Office application with File, Edit, View, etc.. menus. There are 5 modules accessible through tabs at the bottom of the screen. The first tab reveals the Coordinates - the dimension names and labels. The second tab reveals the Array - the multi-dimensional grid layout of data. The third tab allows Deductions - a line by line program of calculations in which the variables involved are picturial representations of the multi-dimensional data coordinate selection. Fourth is the View tab allowing a multi-dimensional representation of the n-dimensional data selection. The fifth Induction tab has not yet been fully designed and built but will allow data to be entered at a highly consolidated level and then distributed back down the inverse calculation tree to low level statistically plausible base data.


Multidimensional calculations by symbolic representation of variables


  SEEK is Awesome  


SEEK is an Associative Knowledge Base. Any circumstance requiring complex searches of information concerning pointers, indicators, abstracts, summaries, parts, items, or references forms a suitable potential application.

SEEK is intended for all sorts of applications. There are 3 main aspects. There are Records which contain arbitrary rich text, a picture element, and a list of keys. There are Keys which include key phrases and sets of .. sets of key phrases. And there are Selections which use logical operators and set theoretic operators to make detailed selections of records from the database.

Suitable lists of keys are created and put into sets, and sets of sets... Records and pictures are created by hand or by cut and paste, and appropriate keys are assigned to each record. (Automatic means of creating large numbers of records from external sources may be developed for individual requirements.)

There are two levels in the selection methodology. At the lower level, selections of records may be made using set theoretic operations on keys. These operations include ElementsOf(), SetsContaining(), Union, Intersection and Complement(). At the higher level, selections of records produced via key identification may be combined using logical operations of And, Or and Not. Thus, for example, it is possible to display all records that satisfy the request
(ElementsOf(SetsContaining(blue zippers)))And Not(sports wear)


Demonstration of an application of SEEK showing tiled records and lists of keys

Fun Samples

most with original code

Note that virus checkers are not familiar with liberal use of the special characters in APL code and sometimes wrongly judge APL executable files to be malicious.

Square Wheel
APL Reference Card
APL Font
Luggage Tag

Square Wheel
Square Wheel
Simply by programming intelligent decisions that automate repetitive work or facilitate optimal safe choices in complicated, rapidly changing, potentially unstable situations, we strive to improve the human condition and make the future more attractive.

UK Patent Applications

Filed Details Application Status
Guide bars for a swing
An addition to a swing comprises metal bars of suitable curvature attached to the pivot bar of a swing in such a way that the motion of the swing is ...
GB2445925 Terminated before granted
Wheel with mutually orthogonal parts
The wheel comprises a pair of specially shaped flat fins fitted in a line along their axes (the x axis) but with one fin being oriented in the x-y ...
GB2437501 Granted
9th November 2011
28th April 2017
A spherical visual display
A spherical visual display comprises a spherical shell, which may be a helmet, lined with a plurality of concave and synchronised displays to provide ...
GB2413717 Terminated
30th July 2010
A garment that provides a tactile feel in response to a computer signal
A garment such as clothing or headwear fitted with electromechanical devices that transmit a tactile sensation to the wearer's skin in response to a...
GB2409798 Terminated before granted

Loan to a Frog, courtsey of Thomas D. Selgas

A frog goes into a bank and approaches the teller. He can see from her nameplate that her name is Patty Whack. "Miss Whack, I'd like to get a $30,000 loan to take a holiday." Patty looks at the frog in disbelief and asks his name. The frog says his name is Kermit Jagger, his dad is Mick Jagger, and that it's okay, he knows the bank manager. Patty explains that he will need to secure the loan with some collateral. The frog says, "Sure. I have this," and produces a tiny porcelain elephant, about an inch tall, bright pink and perfectly formed. Very confused, Patty explains that she'll have to consult with the bank manager and disappears into a back office. She finds the manager and says, "There's a frog called Kermit Jagger out there who claims to know you and wants to borrow $30,000, and he wants to use this as collateral." She holds up the tiny pink elephant. "I mean, what in the world is this?" (You're gonna love this.) The bank manager looks back at her and says, "It's a knickknack, Patty Whack. Give the frog a loan. His old man's a Rolling Stone." (You sang it, didn't you? Yeah, I know you did.) Never take life too seriously.

Thanks again Kodak.

Business Systems Research Products Philosophy
Go to Home BBC Weather OBTC Amazon ebay   
All trademarks and copyrights are owned by the respective owners.
© 2019 Graeme Robertson Ltd.