Rules#
This page is generated from the code and must not be edited by hand.
Ingence concludes nothing without a rule. This is every rule the engine ships, in the Rulebook at revision 4 (digest 36ecb635f8fde81c2c68bc9ad844de3d): 114 rules in force. Each page gives the rule’s sentence in plain words, what it concludes, what it may be tuned by, and what would defeat it.
The rules are listed in the order the engine applies them. Under each heading a rule’s sentence is the one the Dashboard leads with.
What the walk itself records#
Records a fact while the folders are walked or a container is opened. Run by the walk, not by the reading of the rules. There are 4 of them.
Rule |
In plain words |
Concludes |
Available in this version |
|---|---|---|---|
A ZIP or other container holds only what opening it found, and the Index notes whether opening finished, stopped at a limit or was refused; an archive link is read from its text and never opened. |
|
yes |
|
A folder holds exactly the files, folders and bytes the walk counted inside it and beneath it. |
|
yes |
|
A folder holds every file and folder the walk found directly inside it. |
|
yes |
|
Anything on the disk that is not a file, a folder or a shortcut is recorded as what it is, such as a pipe or a device. |
a recorded fact |
yes |
What files are#
Says what a file or a folder is, by placing it in a class. There are 31 of them.
Rule |
In plain words |
Concludes |
Available in this version |
|---|---|---|---|
A file in an image or electrophysiology format that an instrument writes is placed at the recording step, unless its contents contradict its extension or its own name says it was processed. |
a class |
yes |
|
A file whose name says it holds a trajectory, which is worked out from recordings rather than recorded, is placed at the analysis step, unless it is a program. |
a class |
yes |
|
A file whose name carries an amount, such as 10uM or 37C, is taken to record the condition it was made under. |
a class |
yes |
|
Not available in this version. A file whose name states no condition takes the condition its folder’s name states. |
a class |
no |
|
A date in a file’s name, or else in the nearest folder name above it, says roughly when it belongs, never exactly when it was made; two dates make a span. |
a class |
yes |
|
A date in a folder’s name says roughly when what it holds belongs; two dates make a span. |
a class |
yes |
|
A file whose bytes the engine read under the same checksum method its archive used, and found a different checksum, does not hold what the archive said. |
a class |
yes |
|
A file whose bytes, read here, give another SHA-256 than its archive declared is marked so, and the reading here is the fact. |
a class |
yes |
|
Each file is given the earliest time it is known to have existed: a time written inside it, where one was read, and otherwise the earlier of its creation and its last change, since a copy is created after it was last changed; an impossible time, such as one from 1969 or one later than the scan that saw the file, is set aside; a document’s creation date that is really the date of the blank template it was made from (midnight, years before the document was saved) is kept but not believed; where the time came from is kept with it, and a stand-in file is left out. |
a class |
yes |
|
An empty file sitting among files of the same kind that hold data, such as one movie’s empty tracking table beside the others’ full ones, is taken as no data point and is left out when an analysis is weighed. |
a class |
yes |
|
A folder is taken as one experiment when it holds an instrument’s raw files together with files named after them, such as drift-corrected copies and results tables, and no folder above it holds the same ones, or as one session’s raw files when it holds only those, or as an analysis when it holds only files named after raw files kept elsewhere, or as an analysis when it holds one program’s many folders side by side, one per movie or cell, each with the same few files, all without reading what any word means. |
a class |
yes |
|
A folder whose name holds a date beside other words is taken as an experiment, unless a folder above it already has such a name, or it is one of many folders a program wrote, one per movie or cell. |
a class |
yes |
|
A file is taken to serve the purpose its name states, such as a protocol or notes, unless it is a program or sits inside an installed program. |
a class |
yes |
|
Files a computer makes on its own, such as .DS_Store or Thumbs.db, are recognized by how their names are spelled and set aside; an office program’s lock file, whose name starts ~$, is left alone, because it means somebody was at work. |
a class |
yes |
|
A folder whose files an archive says it received together, on one day, was copied there whole on that day; the archive’s time is the copy’s, never when the files were made, so nothing is put in order by it. |
a class |
yes |
|
A folder whose files were all created within minutes of one another, after they were last changed, was copied here whole on that day, which explains its creation times and asks nothing. |
a class |
yes |
|
A file is taken to be in the format its extension names, when that extension means one format and nothing else, unless its contents begin the way another format does; a container the format is built on, such as HDF5 or ZIP, does not count. |
a class |
yes |
|
A file’s name says it is past the point of recording when it has a word such as processed, filtered, stitched or merged in it; instrument software saves such files in its own format too. |
a class |
yes |
|
A folder someone kept as their miscellaneous files is claimed so, and nothing in it is moved into an experiment. |
a class |
yes |
|
Not available in this version. A name is taken as typed by a person when it holds a word a machine would not write, and as written by a machine when three or more names beside it differ only by a counter. |
a class |
no |
|
An empty text file whose name is a sentence is a note someone left, and its name is what it says, so it is never counted as an empty file. |
a class |
yes |
|
A folder named for analysis, summaries, exports, loose files or in-between steps is taken to organize work rather than to hold one piece of it. |
a class |
yes |
|
A file is placed at the step of the work its name states, such as raw, processed or analysis, unless it is a program or sits inside an installed program. |
a class |
yes |
|
A shortcut, or a file that claims a size but takes up no room on the disk, is taken to stand in for contents kept somewhere else. |
a class |
yes |
|
Files whose extensions come from programming or macro languages, such as .py, .R or an ImageJ macro, are recognized as programs, unless their contents say otherwise. |
a class |
yes |
|
A file is taken to be the repeat its name numbers, such as rep2, unless it is a program. |
a class |
yes |
|
A ZIP is recognized as a Fiji set of regions of interest when a look inside found that every item is a .roi file beginning the way Fiji’s regions do, unless the ZIP is a stand-in. |
a class |
yes |
|
A file whose name carries a numbered label, such as cell3, is taken to be one member of a series rather than a thing on its own. |
a class |
yes |
|
Not available in this version. A file whose name states no step of the work takes the step its folder’s name states. |
a class |
no |
|
A file is taken to be about the techniques its name mentions, when its name mentions at least two. |
a class |
yes |
|
A file whose name carries a version, such as v2, is taken to be one version of something rather than the whole of it. |
a class |
yes |
Which files go together#
Says which things count as the same in some respect, and so forms groups. There are 23 of them.
Rule |
In plain words |
Concludes |
Available in this version |
|---|---|---|---|
A link an archive left in place of a file is a copy of the file of its name held elsewhere in the folders read, matched by name and by the folders its text names; nothing is opened. |
|
yes |
|
A set of files someone called copies is grouped as copies, and a set someone called unrelated is no longer called copies. |
|
yes |
|
Files whose contents give the same fingerprint from a quick sample are grouped as holding the same bytes, as far as a sample can tell, unless a file’s contents could not be read. |
|
yes |
|
Every file beneath the experiments of a proposed group someone approved is grouped with the rest, so one yes covers the whole group. |
|
yes |
|
A set of words someone approves groups every experiment holding all of them, each still its own; every set asked is one some experiments share exactly, never a date or a number. |
|
yes |
|
Once someone approves a set of words as a group, every experiment holding that set becomes that group, each experiment (each day) its own. |
|
yes |
|
Once someone approves a set of words as a group, every experiment holding it stays in that set’s series across the days, even when it also holds a more specific approved set. |
|
yes |
|
Files whose whole contents give the same fingerprint are grouped as holding the same bytes. |
|
yes |
|
Two files whose archive gives them the same checksum hold the same bytes, as the archive says it; a step below what the engine proves by reading the bytes itself, and taken back where it reads them and finds otherwise. |
|
yes |
|
Two files whose archives declare one SHA-256 hold the same bytes, unless the engine’s own reading of either disagrees. |
|
yes |
|
Files whose names share every word, leaving out words for the step of the work such as raw and processed, are grouped as one family of names, unless one of them is a computer’s own file or a stand-in. |
|
yes |
|
A run of numbered files in one folder (hela_001 to hela_010) and a table beside them named for their shared name with a word saying it holds results or a summary (hela_results.xlsx) are grouped together. |
|
yes |
|
A recording from an instrument and every file whose name contains the recording’s whole name, such as a table a tracking tool named after the movie it read, are grouped together, each file going with the nearest recording of that name in its experiment; so is a file whose whole name, ending included, other files’ names contain (an image viewer’s “movie.tif - C=0.tif”), even when it is no recording, and an image with the label, mask or annotation named after it in its folder (“vol07_labels.nii” beside “vol07.nii”), whatever step the image is at. |
|
yes |
|
Files with exactly the same name in folders side by side under one folder (images/a.tif and masks/a.tif) are grouped together, unless the name turns up in so many side-by-side folders that it is just how each folder names its files. |
|
yes |
|
Files in one folder whose names differ only by a counting number, such as _001 and _002, are taken as repeats of one condition; amounts with units, such as 10mM, must match in the same places, and a movie and its table are kept apart. |
|
yes |
|
Stored arrays with the same shape, element type and storage order, in two dimensions or more, are grouped as sharing one shape. |
|
yes |
|
Tables with the same column names in the same order and the same delimiter, two columns or more, are grouped as having the same columns, which says nothing about being one experiment. |
|
yes |
|
Two folders are counted as alike when the kinds of things directly inside them match and each holds at least three. |
|
yes |
|
Files whose names give the same amounts and the same condition or reagent words are grouped as one experimental condition. |
|
yes |
|
Files in one folder whose names match in every word, number, label, amount, date and version, with the numbers in the same places, leaving out words for the step of the work and for repeats, are grouped as one named thing, unless one of them is a computer’s own file or a stand-in. |
|
yes |
|
Files of one experiment whose names match in every word, number, label, amount, date and version, leaving out words for the step of the work and for repeats, are grouped as one named thing even when they sit in different folders for different steps (raw, processed, analysis), but not across folders named for different days or repeats; outside any experiment, only within one folder. |
|
yes |
|
Files that match in name, size, last change and kind are grouped as probably copied from one another, except inside an installed program; whether they hold the same bytes is a separate question. |
|
yes |
|
Folders whose names differ only by a version mark are grouped as versions of one thing. |
|
yes |
Pairs suggested for a look#
Proposes that two files are related in one of the eight ways, for a person to look at. A proposal is never a conclusion. There are 18 of them.
Rule |
In plain words |
Concludes |
Available in this version |
|---|---|---|---|
Not available in this version. Two files are suggested as being about the same technique when their names mention at least two techniques in common. |
|
no |
|
Not available in this version. A file is suggested as a conversion of another holding the same content in a different format, when their names belong to one family. |
|
no |
|
A file is suggested as made from another when one script’s own lines read the second by name and write the first by name, which says which came first; never inside an installed program. |
|
yes |
|
As shipped, suggests nothing: set to read the time, two files a script, a notebook, a log, a protocol or notes mentions would be suggested as one made from the other, the earlier first. |
|
yes |
|
A file named after a recording, or after another file’s whole name, ending included, is suggested as made from it, or from the file whose whole name its own holds, whatever step its name states, and never from another file named after it by time alone; never inside an installed program. |
|
yes |
|
Of two files with the same name in side-by-side folders, the one in a folder whose name means raw data, images or input is suggested as the source of the one in a folder whose name means labels, masks, ground truth or output; never inside an installed program. |
|
yes |
|
A table named for a run of numbered files beside it is suggested as made from each of them, one link a file, and no file of the run as made from another; never inside an installed program. |
|
yes |
|
Two files with one name in two folders of an experiment, but for words naming a step of the work, are suggested as one made from the other, the earlier as the source, link by link, whatever step each name states; never two files of one folder, nor inside an installed program. |
|
yes |
|
Not available in this version. A file is suggested as made from another when their names belong to one family, the first is raw data, an image made from data or a table, and at least two separate kinds of evidence agree. |
|
no |
|
Not available in this version. A figure is suggested as drawn from a table of measurements or a summary whose name belongs to the same family. |
|
no |
|
A file is suggested as pointing to another when a path it mentions leads to that file, in its own folder or elsewhere in the data, except inside an installed program. |
|
yes |
|
Two files a script, a notebook, a log, a protocol or notes mentions are suggested as related, with which, if either, was made from the other not known; never inside an installed program. |
|
yes |
|
Two files with the same name in side-by-side folders whose names say nothing about which came first (left/a.tif and right/a.tif) are suggested as related, with neither said to be made from the other; never inside an installed program. |
|
yes |
|
Two files with one name in two folders of an experiment, but for words naming a step of the work, that no time puts in order, are suggested as related, with which, if either, was made from the other not known; never inside an installed program. |
|
yes |
|
Not available in this version. Two pieces of work are suggested as repeats of one another when their names give the same amounts and words and at least three separate kinds of evidence agree. |
|
no |
|
Not available in this version. One folder is put after another in a series of versions when both names carry a version number and they are versions of one thing. |
|
no |
|
Not available in this version. A summary is suggested as made from the files of its group, when the group holds three or more files under one condition. |
|
no |
|
Not available in this version. Two pieces of work are suggested as variations of one another when their names share every word, they differ only in their condition, and at least two kinds of evidence agree. |
|
no |
What is raised for attention#
Raises something for a person’s attention without concluding anything. There are 31 of them.
Rule |
In plain words |
Concludes |
Available in this version |
|---|---|---|---|
A folder is flagged when five or more of its files could not be read, far more often than elsewhere, or when a folder inside it could not be opened at all. |
a finding |
yes |
|
A file is flagged when a word in its name could mean two or more things equally and nothing tells them apart; inside an installed program, whose names are code, it is only marked. |
a finding |
yes |
|
A folder holding files whose addresses on the archive answered not found or moved, or files with an address that could not be read as one, is flagged once, with how many, and nothing is said about whether those files exist elsewhere. |
a finding |
yes |
|
Where someone said a rule read a whole class of files wrongly (every file it gave one value), each of those readings is shown as in doubt, with their answer as the reason. |
a finding |
yes |
|
Not available in this version. A file is flagged when two equally trustworthy times for it disagree by more than a day. |
a finding |
no |
|
A folder is flagged when ten or more of its files could not be made sense of, far more often than elsewhere, or when a folder inside it could not be opened at all. |
a finding |
yes |
|
A file is flagged when its contents begin the way one format does and its extension names another, leaving out containers such as PDF, HDF5 or ZIP that other formats are built on. |
a finding |
yes |
|
A file whose own text says “do not analyze” or “do not use” is flagged, because somebody left a note about it; nothing is skipped for it. |
a finding |
yes |
|
A file whose contents cannot be read is flagged, saying why: it holds nothing beside siblings that hold something (an empty output), it is empty, it is empty and untouched since before a set date, it is a link the archive left in place of the file, it is a link to somewhere outside the data or to something gone, or it is not an ordinary file; inside an installed program, where empty files are ordinary, it is only marked. |
a finding |
yes |
|
A folder copied in all at once (five or more files, four in five created after they were last changed, all within ten minutes) is asked about only where its times make a later step, such as an analysis, look older than the raw data it came from. |
a finding |
yes |
|
Each attribute an archive’s listing states on its files is asked about once, by its name, for you to say what it means; nothing is assumed. |
a finding |
yes |
|
A folder whose files an archive says were copied in over more than a day is flagged, so the one-day copy window can be adjusted. |
a finding |
yes |
|
A subject’s vocabulary pack you have not loaded would read words or file types nothing reads here, so it is offered, with how many it would read; nothing loads until you say yes. |
a finding |
yes |
|
A folder is flagged as in doubt when its name has a word such as wrong, failed, old, test or redo in it; a weak word, such as questionable, counts only beside another. |
a finding |
yes |
|
A folder whose name holds only weak words of doubt, such as questionable, is flagged for you to confirm. |
a finding |
yes |
|
Not available in this version. Files that look like copies of one another but whose contents were never compared are flagged for checking, except where every one sits in an organizing folder. |
a finding |
no |
|
Experiments whose folders share rare words and file names are proposed as belonging together, one question per proposed group, and nothing is grouped until someone says yes. |
a finding |
yes |
|
A file whose contents are a container, such as HDF5, is flagged as built on that container, and a ZIP under an archive’s extension is asked about, since only the lab can say what it holds. |
a finding |
yes |
|
Not available in this version. A group is flagged as incomplete when it has nothing at one of the steps raw, processed or analysis, naming the step that is missing. |
a finding |
no |
|
Every question is a set of words some experiments share exactly, never a date or a number: the most shared first, then what each adds to a set you approved; asked word by word instead, each word added or missing is its own question. |
a finding |
yes |
|
A label the engine has no meaning for, numbered from 1 up to a small number and found in two or more folders, is flagged for you to say whether it marks repeats. |
a finding |
yes |
|
A folder is recognized as an installed program, such as a copy of Fiji or a Python environment, from the parts it holds, a name ending .app, its program-style subfolders or a majority of program files; its files are still indexed and read, and rules about experiments leave them alone. |
a finding |
yes |
|
A folder of files that is no experiment and holds none is kept as it is and offered as your miscellaneous files, for you to approve. |
a finding |
yes |
|
Not available in this version. A group of files under one condition is flagged when it holds fewer than three. |
a finding |
no |
|
A file is flagged when its name says not to use it, with a word such as ignore, failed or contaminated. |
a finding |
yes |
|
A ZIP whose name says it holds regions of interest is flagged until a look inside lists what it holds. |
a finding |
yes |
|
A folder laid out like a program’s that no program Ingence knows matches is asked about: is it a program or not?. |
a finding |
yes |
|
Files are raised together when their names or formats put them earlier in the work than the files they were suggested as made from, one question for each folder and pair of steps. |
a finding |
yes |
|
A name stating a small count, such as N=3, is flagged: on a program or on a file past the point of recording it is read as how many things the file rests on, and on a recording, or wherever the step is unclear, as which one of several it is, for you to confirm. |
a finding |
yes |
|
A word the engine has no meaning for is asked about, once for all the places it stands, where it is written in the same part of three or more names of one folder written alike as at least two words the engine knows of one kind, which are at least three quarters of the words it knows there; that kind is only a hint, and often a wrong one, so you say what the word is. |
a finding |
yes |
|
A folder is flagged when more than four in five of at least twenty words in its files’ names mean nothing the engine knows; inside an installed program, whose words are code, it is only marked. |
a finding |
yes |
Limits every conclusion keeps to#
Limits what any conclusion may say, by naming what cannot be true together. There are 7 of them.
Rule |
In plain words |
Limits |
Available in this version |
|---|---|---|---|
At most 25 possible partners are suggested for any one file, and a file whose list was cut short is marked as such. |
a limit |
yes |
|
A program is never considered as made from a file, nor a file as made from a program. |
|
yes |
|
Not available in this version. No file is counted as made from one written more than a minute after it, when both carry a trustworthy time. |
|
no |
|
Not available in this version. No file is ever counted as made from itself, however long the chain of files in between. |
|
no |
|
Two files whose names give different subjects, samples, conditions, cultures or sessions are never counted as made one from the other, whatever else they share. |
|
yes |
|
Not available in this version. Two files are said to hold the same bytes only when a fingerprint of their whole contents matches, never because their names, sizes or times agree. |
|
no |
|
Not available in this version. Files are put in order only when they already belong to one series under the same condition. |
|
no |
Rules not available in this version#
19 of the 114 rules are declared and not available in this version. The engine does not run them, so they conclude and limit nothing today. They are marked in the tables above and each says why on its own page.
The summary the engine prints after reading the rules says that 15 rules are not available in this version. It counts the rules it evaluates, and the 4 limits in this list are applied while pairs are proposed, so it does not count them.
Rules by the relation they conclude#
Of the eight relations, these are the ones a rule here concludes or proposes. The other rules conclude a class, a group, a limit or a finding.
concerns
contains
derives
embeds
equivalent
identical
references
succeeds
Kinds of reasoning#
entailed: A conclusion cannot be wrong if what it read is right.defeasible: A conclusion is usually right, and is retracted when a rule it names concludes against it.abductive: A conclusion is the best explanation of what was seen, and another explanation could replace it.testified: A conclusion is stated by a person, and outranks every rule within its scope.
Rules that ship switched off#
1 rule is built to run and ship switched off, because whether they hold is for a person to decide. Each page says how a project turns the rule on.
Rule |
In plain words |
Concludes |
|---|---|---|
One file is put after another in a series when both are repeats of one condition and the second carries the next number, but repeats whose names differ in more than one part, whose numbers tie or do not count, or whose clocks run against the numbers are not put in order, and the rule is off until a project turns it on. |
|
Rules replaced or switched off#
16 earlier rules are no longer in force. They stay in the Rulebook’s history, so a past run can still be replayed against them.
Rule |
Why it is not in force |
|---|---|
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |
|
replaced by a newer rule |