The Argument For Machine Consciousness

Modern arguments for machines having consciousness can, I suggest, be paraphrased as follows:

  1. We have no idea what consciousness is or how it works
  2. We have, on the other hand, lots of ideas about how electro-mechanical systems work


  1. Let us assert that consciousness is an electro-mechanical system so that we can say we understand it.
  2. As a side-effect of (3) we imagine that machines can be conscious.

I have no disagree with the observations 1 & 2 but 3 has nothing to motivate than the firm conviction that, whatever our current state of knowledge happens to be, it must be good enough to understand anything we really want to understand.

A better move than step 3 would be simply to repeat observation 1 and say we don't know what it is or how it works. This rather undercuts step 4; perhaps step 4 is best left behind in the science fiction stories it came from.

There is nothing that it is like to be a computation

Whatever it is like to be a bat, there is nothing that it is like to be a computation.

A computation is the abstract form. Whether embodied in pencil on paper, or in neurons in an organism, the computation is the abstract — disembodied — structure, not the embodiment.

C# nullable refs and virtual vs abstract properties


public class InitialStep2Sqlite : ScriptMigration
    protected override string UpPath => "Sqlite2.Up.sql";
    protected override string DownPath => "Sqlite2.Down.sql";

public abstract class ScriptMigration : Migration
  protected virtual string UpPath {get;}
  protected virtual string DownPath {get;}

  protected override void Up(MigrationBuilder mb) 
    => mb.RunSqlFile(UpPath);
  protected override void Down(MigrationBuilder mb) 
    => mb.RunSqlFile(DownPath);

which, compiled under nullable enable, says “[CS8618] Non-nullable property 'UpPath' must contain a non-null value when exiting constructor. Consider declaring the property as nullable.”

Changing the property's virtual to abstact removes the warning.

The lesson: If your non-null proof of a property depends crucially on the subclass making it non-null, then making the parent property abstract not virtual is the correct statement of intent.

Generally, if a parent Member depends on the subclass for correctness – if the parent can't provide a correct implementation itself – then, logically, its correctness requires it to be abstract not virtual.

Thoughts on Workplace Risk Assessments in 2021 – Proportionate vs Exponential Risk and Anecdotal vs Statistical Assessment

Proportionate vs Exponential Risk Assessment

  • Most human scale risk is proportionate. When 2 or 3 careless drivers go on the road, there is a risk of them killing 2 or 3 people.
  • Some risks, such as forest fires, are exponential, not proportionate. If 2 or 3 people drop a cigarette in a dry forest, the risk is not of 2 or 3 small fires endangering 2 or 3 people, the risk is that just one of those fires goes beyond control and endangers thousands of people.
  • Infectious disease is not a proportionate “1 careless person might endanger 1 person” type risk. It is a forest fire, exponential type risk in which one careless person can endanger thousands of people.

On Workplace Risk Assessment

  • Workplace risk assessment is typically done on an anecdotal, amateur, basis with no grasp of statistics. This is mostly ok because the risks are rarely fatal or lifelong; and workplace risks are typically proportionate “2 or 3 mistakes might hurt 2 or 3 people” type risks, not exponential “1 mistake might hurt thousands of people” type risks.
  • Covid is a forest fire, exponential type risk. A risk assessment for Covid that treats it as a proportionate risk is wrong and endangers thousands of unrelated people, not just the people in the workplace doing the risk assessment.
  • An anecdotal approach to risk assessment for Covid is negligent. If you have a risk assessment that relies on 'other people are doing it and the consequences haven't been terrible' then you have a risk assessment that is adequate for low, proportionate risk.
  • If you are tempted by 'but hundreds of people are doing it and the consequences haven't been terrible' then you are gambling, in the same way that someone who drops a cigarette in a dry forest in gambling.

Statistical Risk Assessment

  • A serious approach—if it is really necessary to do a workplace risk assessment for covid— would do the risk matrix using national empirical data and statistical computations for the “how likely” scale; and using “it could spark another outbreak, with widespread death” for the “how bad” scale; and updating weekly.
  • Because the “how bad” scale of risk goes up to “it could spark another outbreak and endanger thousands” you would need a calculation to show that the “how probable” scale is small enough to negate that.

An Simple Alternative Approach

  • An alternative approach to covid risk might be to say that when herd immunity is reached then we have done everything we can reasonably do and all that remains is to get back to life.
  • That seems to me the simple approach. Since the UK in mid-2021 is only a few months away from achieving that, I have no appetite to be impatient now and attempt a risk assessment that is likely to be wrong.

~ expert or well-informed comment more than welcome ~