Part constraints
This page describes the organizational forces that limit change.  It explains how to overcome them when necessary. 

Power& tradition holding back progress
This page uses an example to illustrate how:
  • A business can gain focus from targeting key customers,
  • Business planning activities performed by the whole organization can build awareness, empowerment and coherence. 
  • A program approach can ensure strategic alignment. 
Be responsive to market dynamics
This page uses the example of HP's printer organization freeing itself from its organizational constraints to sell a printer targeted at the IBM pc user. 
The constraints are described. 
The techniques to overcome them are implied. 
Overcome reactionaries
Primary Navigation

A schematic model for constraining a part of a test request

Summary
This page looks at how
This page describes the Adaptive Web framework (AWF) test system and the agent programming framework (Smiley) that supports its operation. 
Example test system statements are included.  To begin a test a test statement is loaded into Smiley while Smiley executes on the Perl interpreter. 
Part of Smiley's Perl code focused on setting up the infrastructure is included bellow. 
The setup includes:
  • Loading the 'Meta file' specification,
  • Initializing the Slipnet, and Workspaces and loading them
  • So that the Coderack can be called. 
The Coderack, which is the focus of a separate page of the Perl frame then schedules and runs the codelets that are invoked by the test statement structures. 
Smiley
processes the statement, such as a test request, to ensure that each part of the statement is constrained. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The
The agents in complex adaptive systems (CAS) must model their environment to respond effectively to it.  Samuel modeling is described as an approach. 
modeling
itself is performed by model codelets
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons is an addressable control structure which is used in biological cells to control access to other regions of the DNA. 
and subgroup
Plans emerge in complex adaptive systems (CAS) to provide the instructions that agents use to perform actions.  The component architecture and structure of the plans is reviewed. 
schematic sequences
are included
The group models'
This page describes the Copycat Slipnet. 
The goal of the Slipnet is reviewed. 
Smiley's specialized use of the Slipnet is introduced. 
The initial Slipnet network used by the 'Merge Streams' and 'Virtual Robot' agent-based applications is setup in initchemistry and is included. 
The Slipnet infrastructure and initialization functions are included. 
Slipnet
associations are included
The codelets and supporting functions are included
Introduction
A test request statement can be
The agents in complex adaptive systems (CAS) must model their environment to respond effectively to it.  Samuel modeling is described as an approach. 
modeled
by a complex adaptive system (
This page introduces the complex adaptive system (CAS) theory frame.  The theory is positioned relative to the natural sciences.  It catalogs the laws and strategies which underpin the operation of systems that are based on the interaction of emergent agents. 
John Holland's framework for representing complexity is outlined.  Links to other key aspects of CAS theory discussed at the site are presented. 
CAS
) using operon is an addressable control structure which is used in biological cells to control access to other regions of the DNA. 
control of schemata to coordinate
Plans are interpreted and implemented by agents.  This page discusses the properties of agents in a complex adaptive system (CAS). 
It then presents examples of agents in different CAS.  The examples include a computer program where modeling and actions are performed by software agents.  These software agents are aggregates. 
The participation of agents in flows is introduced and some implications of this are outlined. 
agents
(codelets function list) assessments. 
Any structure can be deployed into an active
This page describes the Adaptive Web framework (AWF) test system and the agent programming framework (Smiley) that supports its operation. 
Example test system statements are included.  To begin a test a test statement is loaded into Smiley while Smiley executes on the Perl interpreter. 
Part of Smiley's Perl code focused on setting up the infrastructure is included bellow. 
The setup includes:
  • Loading the 'Meta file' specification,
  • Initializing the Slipnet, and Workspaces and loading them
  • So that the Coderack can be called. 
The Coderack, which is the focus of a separate page of the Perl frame then schedules and runs the codelets that are invoked by the test statement structures. 
Smiley
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
.  Smiley is an agent programming framework (
This presentation applies complex adaptive system (CAS) agents to computer programming. 
see presentation
).  A Workspace is active if it has group scout codelets exploring the Workspace. 
Modeling of the constraints on each part within the statement by model codelets
Each test statement is composed of parts.  A part codelet (evaluator, builder) manages the assessment of each parts
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is composed of groups. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The modeling itself is performed by model codelets. 
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons and subgroup schematic sequences are included. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
wholeness
,
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is valid. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The modeling itself is performed by model codelets. 
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons and subgroup schematic sequences are included. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
validity
, constraints and
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is integral. 
Smiley does this through the operation of a part codelet which initiates a program to assess the integrity of the parts. 
The modeling itself is performed by model codelets. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
integrity
. Partconstrained coordinates the constraints assessment for the part builder.  It sends the
Agents use sensors to detect events in their environment.  This page reviews how these events become signals associated with beneficial responses in a complex adaptive system (CAS).  CAS signals emerge from the Darwinian information model.  Signals can indicate decision summaries and level of uncertainty. 
signal
sequence 'model, schema, partscategory, subject|object|verb, partconstrained' to the nucleus, a membrane bounded module in a eukaryotic cell where the DNA is encapsulated and operated on. 

Indirect constraints modeling response to the part builder's signal
The constrained group operon has a subgroup used as one model of the correctness of a verb's structure in a test request.  
The constraints operon
The sequence named nlmbindtomsigpc has been
This page describes the Smiley infrastructure that supports the associative binding of schematic strings to codelets defined in the Meta file and Slipnet. 
The infrastructure supporting the associations is introduced. 
The role of Jeff Hawkins neocortical attributes is discussed. 
Relevant Slipnet configurations are included. 
The codelets and supporting functions are included. 
associated
in the
This page describes the Copycat Slipnet. 
The goal of the Slipnet is reviewed. 
Smiley's specialized use of the Slipnet is introduced. 
The initial Slipnet network used by the 'Merge Streams' and 'Virtual Robot' agent-based applications is setup in initchemistry and is included. 
The Slipnet infrastructure and initialization functions are included. 
Slipnet
with a signal type (mpsignal).
The constrained model subgroup schemata
The transfers of RNA (RNA), a polymer composed of a chain of ribose sugars.  It does not naturally form into a paired double helix and so is far less stable than DNA.  Chains of DNA are converted by transcription into equivalently sequenced messenger m-RNA.  RNA also provides the associations that encode the genetic code.  Transfer t-RNAs have a site that maps to the codon and match the associated amino-acid.  Stuart Kauffman argues that RNA polymers may be the precursor to our current DNA based genome and protein based enzymes.  In the adaptive web framework's (AWF) Smiley we use a similar paradigm with no proteins. 
like specific subgroups from the nuclear
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
to the statement's
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
include:
  • mcspbindtomsigs which is associated with the evaluator of the subject codelet mcsp,
  • mcvpbindtomsigv which is associated with the evaluator of the verb codelet mcvp,
  • mcopbindtomsigo which is associated with the evaluator of the object codelet mcop.
Context of mps models
The RNA like Workspace schemata are required to provide context such as the type of part (verb, subject or object) that the codelet can work on.  The schemata are structured in such a way that the type of part is specified at the third Workspace object (WSO) in the schematic string.  Hence when the schema group completes the sps signalled codelet will be able to leverage this context with the help of getcontext and selsaltypedwso

The part constraints model codelets
The codelet builder mcspbuilder specifies an abstract model of a subject part which is mapped to the application's specific language by the Meta file specification is loaded by the adaptive web framework's (AWF) Smiley.  It defines the application system's basic rules, its keywords and their properties and the form of the assertion or implementation statement the application uses.   and implemented in Perl code running on the
This page describes the Copycat Coderack. 
The details of the codelet architecture are described. 
The specialized use of the Coderack by the adaptive web framework's (AWF) Smiley is discussed. 
The codelet scheduling mechanism is discussed. 
A variety of Smiley extensions to the Coderack are reviewed. 
The Coderack infrastructure functions are included. 
Coderack
.  It describes in the subject WSO its recommendation -> constrained subject model or non-conforming part (stop model). The model requires there to be one WSO sequence with the tokens ivariable, name, equals. 

The codelet builder mcopbuilder specifies an abstract model of an object part which is mapped to the application's specific language by the Meta file specification and implemented in Perl code running on the
This page describes the Copycat Coderack. 
The details of the codelet architecture are described. 
The specialized use of the Coderack by the adaptive web framework's (AWF) Smiley is discussed. 
The codelet scheduling mechanism is discussed. 
A variety of Smiley extensions to the Coderack are reviewed. 
The Coderack infrastructure functions are included. 
Coderack
.  It describes in the object WSO its recommendation -> constrained object model or non-conforming part (stop model). The model requires there to one WSO sequence with the tokens name, equals. 

The codelet builder mcvpbuilder specifies an abstract model of a verb part which is mapped to the application's specific language by the Meta file specification and implemented in Perl code running on the
This page describes the Copycat Coderack. 
The details of the codelet architecture are described. 
The specialized use of the Coderack by the adaptive web framework's (AWF) Smiley is discussed. 
The codelet scheduling mechanism is discussed. 
A variety of Smiley extensions to the Coderack are reviewed. 
The Coderack infrastructure functions are included. 
Coderack
.  It describes in the verb WSO its recommendation -> constrained verb model or non-conforming part (stop model). The model requires there to be a WSO sequence with the token verb, and keyword subject present. 
Part constrained
A subject, verb or object, part reports valid if the subject|object WSO contains a constrained model descriptor. 
Synchronization of part constraints modeling and decision making
Until a part is described as constrained it will not be processed further by a partbuilder. 


awfpbs testing development schemata
The following schematic strings are loaded by convbws.  They are group schemata which are associated with nuclear agents (nuclabm evaluator & builder) which respond to codelet signals by deploying the included sub-group schemata to the active
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace


The Meta-keyword <comment> toggles convbws loading between comment mode and processing active <keywords>.  In the following the initial <comment> switches convbws into active mode. 

The active keywords include meta-keyword instructions for convbws, such as <rhlmspg> and <memgroup> and schematic keywords that will be processed during nuclear operations.  The first keyword of a schematic string also identifies the start of the group and the start of the deployed subgroup. 

The schematic groups listed include sub-group deployment schemata for codelets that are typically useful during development is a phase during the operation of a CAS agent.  It allows for schematic strategies to be iteratively blended with environmental signals to solve the logistical issues of migrating newly built and transformed sub-agents.  That is needed to achieve the adult configuration of the agent and optimize it for the proximate environment.  Smiley includes examples of the developmental phase agents required in an emergent CAS.  In situations where parents invest in the growth and memetic learning of their offspring the schematic grab bag can support optimizations to develop models, structures and actions to construct an adept adult.  In humans, adolescence leverages neural plasticity, elder sibling advice and adult coaching to help prepare the deploying neuronal network and body to successfully compete. 
: schbind, sloc, slistkw, skipwso, namest, srcdkw, endrcdkw, endlistkw, and unbind.


pcpartconstrained signalled meme
The partconstrained function's
This page discusses how Smiley provides signalling to its agent-based applications. 
Alternative strategies for initiating the signalling are reviewed. 
The codelets and supporting functions are included.
signal
(<model> <schema> <partscategory> (<subject>| <object>| <verb>) <partconstrained>) is associated with a meme group.  The nuclabm nuclear codelet (builder) matches the signal with all the identically named nuclear Workspace deployed meme groups and heuristically selects subgroup schematic strings from the complete set to send for deployment.  The statement schematic structures subject| object| verb Slipnet description associates codelet forces (nuclabmevaluator) with the signals. 

 



(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <partconstrained> <model> <partscategory> <subject> <jhlabel> <partconstrained> </memgroup> </rhlmspg> )<comment> mcsp
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <partconstrained> <model> <partscategory> <object> <jhlabel> <partconstrained> </memgroup> </rhlmspg> )<comment> mcop<br>
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <partconstrained> <model> <partscategory> <verb> <jhlabel> <partconstrained> </memgroup> </rhlmspg> )<comment> mcvp<br>





(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <partconstrained> <model> <partscategory> <subject> <jhlabel> <partconstrained> </memgroup> </rhlmspg> ) comment
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <partconstrained> <model> <partscategory> <object> <jhlabel> <partconstrained> </memgroup> </rhlmspg> ) comment <br>
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <partconstrained> <model> <partscategory> <verb> <jhlabel> <partconstrained> </memgroup> </rhlmspg> ) comment <br>

#
    my ($pconc, $jhlsid);
# nlmbindtomsigpc
# setup the binding string for the multi path signal to initiate part constrained model - model codelets launch nuclabmcodelets which ignore the concept as long as it had an evaluator

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 3, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# nlmbindtomsigpcv
    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 4, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# nlmbindtomsigpco
    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 5, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# mcspbindtomsigs
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 13, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mcspevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mcopbindtomsigo
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 14, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mcopevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mcvpbindtomsigv
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 15, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {partconstrained});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mcvpevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);

Functions

#<!-- start tag vbt -->
#
sub partrescount {
    my ($myli, $nextinstance, $twso, $kwp, $kwpr, $sactset)=@_;
    my ($count, $i);

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("partrescount myli $myli, nextinstance $nextinstance twso $twso kwp $kwp kwpr $kwpr sactset($$sactset[0]) ");
      };
    $count = 0;
# for each typed wso triple count if they are the sequence 'ivariable name equals'

    for ($i = trwsoadr ( $nextinstance, 1);
    (trwsoadr ($i, 2) < $twso);
    $i = trwsoadr ($i, 1)) {

      if ((wsbasetype ($i) == $Awfif::memes-> {snnh}{ivariable})
      && (wsbasetype (trwsoadr ($i,1)) == $Awfif::memes-> {snnh}{name})
      && (wsbasetype (trwsoadr ($i,2)) == $Awfif::memes-> {snnh}{equals}) ){

        $count++;
        };# count
      };# for

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("partrescountx ret ($count)\n");
      };

    return ($count);
    };# partrescount
#
#<!-- end tag vbt -->
#
sub partconstrained {#
    my($myli, $parti, $kwp, $kwpr, $sactset)=@_;
    my ($i, $i2, $validated, $giveup);

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      my ($pr);
      $pr = $Awfif::memes-> {currentwsbi};
      print ("partconstrained myli $myli ws $pr kwp($kwp) kwpr($kwpr) sactset($$sactset[0]) ");
      $pr = $Awfif::memes-> {snnih} {wsbasetype ($parti)};
      print (" i $pr($parti) ");
      $pr = $Awfif::pcache-> {p} [$Awfif::memes-> {currentwsbi}];
      print ("p $pr ");
      };
# updated for merged workspaces
# partconstrained is called within part codelet As such it will assume the part has setup the pcache

    $validated = '';
    $giveup = '';
    $i2 = 0;
    if ($Awfif::pcache-> {p} [$Awfif::memes-> {currentwsbi}] != 0) {# there are parts
# see if the modelling still needs to agree this part is valid
      if ((!($validated = findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})))
      && ((!($giveup = findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))) )
      && ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {valid}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))) )
      && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
        or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodsverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
        or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodcverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
        or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodmverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})))
      ){
# check constraint on the part

        if ((!$giveup) && (!$validated)) {#
# request modelling
          my (@lab, $labcount, $sigcount, @lomatchs, @lola, @loconcs, @lostrts, @loends, @logb, @loge);
          $labcount = 0;

          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {model});
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {schema});
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {partscategory});
          $labcount = labload (\@lab, $labcount, wsbasetype ($parti));
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {partconstrained});

          $sigcount = labinv2 ($myli, \@lab, $labcount, \@lomatchs, \@lola, \@loconcs, \@lostrts, \@loends, \@logb, \@loge, 'notoporstbinding');
# apply the linking function of group completion
# if the groups labels result in a match with a signal then raise the signal
#

          if ($sigcount > 0) {
            for ($i = 0; $i < $sigcount; $i++) {
              if ($lomatchs[$i]) {#there is a link launch the model scout
# unless this is an operon

                if (($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{operon}) && ($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{stbinding}) && ($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{subpstbinding})) {

                  &itcsuse ();
                  $Awfif::clp = ();

                  if ((defined($myli)) && ((!defined($Awfif::codelet-> {l} [$myli] [13])) or ($Awfif::codelet-> {l} [$myli] [13] == 0)) && (( $Awfif::wsol-> {l} [awsoadr ($parti)] [8] != 0)
                      or ($Awfif::wsol-> {l}[awsoadr ($parti)][ $Awfif::memes-> {wsologucount}] != 0))) {&break()};#*** submacrok ***#
                  $Awfif::clp-> {log} = $Awfif::codelet-> {l} [$myli][13];
                  $Awfif::clp-> {urgency} = ($Awfif::codelet-> {l} [$myli][3] * $Awfif::memes-> {evlaunchm});
                  if ($Awfif::codelet-> {l}[$myli][19] ne '') {

                    $Awfif::clp-> {wsi} = $Awfif::codelet-> {l}[$myli][19];
                    }#wsi set
                  else {

                    $Awfif::clp-> {wsi} = $Awfif::memes-> {currentwsbi};
                    };
                  $Awfif::clp-> {strategy} = "tmodelscout";
                  $Awfif::clp-> {action}-> {sponsor} = $parti;
                  $Awfif::clp-> {action}-> {signal} = findsignal ($loconcs[$i]);
                  $Awfif::clp-> {action}-> {schema} = $loconcs[$i];
                  $Awfif::clp-> {action}-> {sws} = $Awfif::memes->{currentwsbi};
                  $Awfif::clp-> {action}-> {wss} = $lostrts[$i];
                  $Awfif::clp-> {action}-> {wse} = $loends[$i];
                  if (($logb[$i] != 0)
                  && ($logb[$i] != $loge[$i]) ){
                    $Awfif::clp-> {action}-> {wsgs} = $logb[$i];
                    $Awfif::clp-> {action}-> {wsge} = $loge[$i];
                    };#operon has a gap
                  $Awfif::clp-> {action}-> {jhlabeli} = $lola[$i];
                  &cdsubmitcodelet ($myli, \$Awfif::clp);
                  }; #if its not an operon
                };#launch the model scout
              };#for
            };
          }# if request modeller
        };# no model descriptor
      };# if

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("partconstrainedx ret ($validated)\n");
      };
    return $validated
    }# partconstrained
#
#
sub mcspevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mcspbuilder');

    &clogstatx ();
    }# mcspevaluator1
#
#
sub mcspbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imcspbuilder1 ($myli, \$$kwp, $kwpr, \@$sactset, 1);

    &clogstatx ();
    }# mcspbuilder1
#
#
sub mcvpevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mcvpbuilder');

    &clogstatx ();
    }# mcvpevaluator1
#
sub mcvpbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("mcvpbuilder myli $myli kwp($kwp) kwpr($kwpr) ");
      };
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso, $afrom, $unique, $descfits, $conforms);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound == 1) {#enforces the subject requirement that there be exactly one subject declaration

        &updatelog ($myli,'ae', 5, $file);
        $unique = (ipartseqcount ('searchall', $myli, $nextinstance, $twso, \$descfits, \$conforms, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {subject})==1);
# if unique then describe that the verb is valid
        $afrom = awsoadr ($nextinstance);
        if (($unique) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {constrained}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# if only one for thresholding reduce its activity
          };#if
        };# one statement
# otherwise badly formed verb so terminate
      if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($stfound != 1) or (!$unique)) {

        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mcvpbuilder1
#
sub mcopevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mcopbuilder');

    &clogstatx ();
    }# mcopevaluator1
#
sub mcopbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso, $afrom, $present, $descfits, $conforms);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound == 1) {#enforces the object requirement that there be ?

        &updatelog ($myli,'ae', 5, $file);
        $present = (ipartseqcount ('searchall', $myli, $nextinstance, $twso, \$descfits, \$conforms, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
          $Awfif::memes-> {snnh} {name},
          $Awfif::memes-> {snnh} {equals})>0);
# if unique then describe that the object is valid
        $afrom = awsoadr ($nextinstance);
        if (($present) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {constrained}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# if only one for thresholding reduce its activity
          };#if
        };# one statement
# otherwise badly formed verb so terminate
      if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($stfound != 1) or (!$present)) {

        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mcopbuilder1
#
#
sub vbtmcspevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# apply a model to ensure the vbot test specification statement parts are constrained
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'vbtmcspbuilder');

    &clogstatx ();
    }# vbtmcspevaluator1
#
sub imcspbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset, $constcount) = @_;
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces
# models must use the full workspace
# for vbot subject will be constrained to contain no indirect variables

    $found = '';
# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 4)) {

      my ($stfound, $twso, $afrom, $unique);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound == 1) {#enforces the subject requirement that there be exactly one subject declaration

        &updatelog ($myli,'ae', 5, $file);
        $unique = (partrescount ($myli, $nextinstance, $twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset)==$constcount);
# if unique then describe that the subject is valid
        $afrom = awsoadr ($nextinstance);
        if (($unique) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {constrained}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# imcspreward

          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} + $Awfif::memes-> {batp};
# if only one for thresholding reduce its activity
          };#if
        };# one statement
# otherwise badly formed subject so terminate
      if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($stfound != 1) or (!$unique)) {

        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# imcspbuilder1
#
sub vbtmcspbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# apply a model to ensure the vbot test specification statement parts are constrained
# checked for merged workspaces

    no strict 'refs';
    &imcspbuilder1 ($myli, \$$kwp, $kwpr, \@$sactset, 0);

    &clogstatx ();
    }# vbtmcspbuilder1
#
sub vbtmcopevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# apply a model to ensure the vbot test specification statement parts are constrained
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'vbtmcopbuilder');

    &clogstatx ();
    }# vbtmcopevaluator1
#
sub vbtmcopbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# apply a model to ensure the vbot test specification statement parts are constrained
# checked for merged workspaces
# models must use the full workspace

    $found = '';
# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {

      my ($stfound, $twso, $afrom, $present, $descfits, $conforms);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound == 1) {#enforces the object requirement that there be ?

        &updatelog ($myli,'ae', 5, $file);
        $present = (ipartseqcount ('searchall', $myli, $nextinstance, $twso, \$descfits, \$conforms, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
          $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {multiple},
          $Awfif::memes-> {snnh} {cans})>0);
# if unique then describe that the object is valid
        $afrom = awsoadr ($nextinstance);
        if (($present) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {constrained}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# vbtmcopbreward

          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} + $Awfif::memes-> {batp};
# if only one for thresholding reduce its activity
          };#if
        };# one statement
# otherwise badly formed verb so terminate
      if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($stfound != 1) or (!$present)) {

        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# vbtmcopbuilder1
#
sub vbtmcvpevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'vbtmcvpbuilder');

    &clogstatx ();
    }# vbtmcvpevaluator1
#
sub vbtmcvpbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces
# models must use the full workspace

    $found = '';
# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {

      my ($stfound, $twso, $afrom, $unique, $descfits, $conforms);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound == 1) {#enforces the subject requirement that there be exactly one subject declaration

        &updatelog ($myli,'ae', 5, $file);
        $unique = (ipartseqcount ('searchall', $myli, $nextinstance, $twso, \$descfits, \$conforms, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
        $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {verb},
        $Awfif::memes-> {snnh} {in},
        $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {phys}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {list})==1);
# if unique then describe that the verb is valid
        $afrom = awsoadr ($nextinstance);
        if (($unique) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {constrained}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {constrained}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# vbtmcvpbreward

          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} + $Awfif::memes-> {batp};
# if only one for thresholding reduce its activity
          };#if
        };# one statement
# otherwise badly formed verb so terminate
      if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($stfound != 1) or (!$unique)) {

        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# vbtmcvpbuilder1
#
#<!-- start tag sm -->
#
sub partbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($ni, $ani,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces

    $cdn = clogstat (\$cdnx);
    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdn myli $myli kwp($kwp) kwpr($kwpr)");
      &itcpoutput ($myli);
      };
# parts must use the full workspace

    $grkwp = $Awfif::wsbl->{wsoh}[$Awfif::memes->{currentwsbi}];
    $grkwpr = $Awfif::wsbl->{wsft}[$Awfif::memes->{currentwsbi}];
# choose a salient part from the workspace

    if ($Awfif::codelet->{l}[$myli][4] > 0) {
      $ni = $Awfif::codelet->{l}[$myli][4];
      if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
        &itwsoutput ( trwsoadr ($ni,1), $ni);
        };
      if (!findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $ni, wsbasetype ($ni), $Awfif::memes-> {snnh} {partscategory})) {
        my ($buildpart);
# if model thresholding has failed lower energy

        if (
        ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))) )
        && (findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {dropthreshold}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))
        && (findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {dropopcheck}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))
        ){
# atppenalty2

          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} - $Awfif::memes-> {failatpr};
          };#if
# if the part is not marked as valid build completion descriptors
        if ((partvalid ($myli, $ni, $grkwp, $grkwpr, \@$sactset))
        && (partconstrained ($myli, $ni, $grkwp, $grkwpr, \@$sactset))
        && (partintegrated ($myli, $ni, $grkwp, $grkwpr, \@$sactset)) ){

          $buildpart = 't';
          $ani = awsoadr ($ni);
          $Awfif::wsol-> {l} [$ani][2]
            = setupdesc ( (wsbasetype ($ni)),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {valid}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$ani][2],
            $ani);
          &invcaches (wsbasetype ($ni));
# pbwscup
          &wsclinv (0, $Awfif::memes-> {currentwsbi}, $Awfif::memes-> {strbool}[$Awfif::memes-> {streh} {bugroup}]);
          };#partvalid and constrained
        if ($buildpart) {#deploy the part descriptor

          $Awfif::wsol-> {l} [$ani][2]
              = setupdesc ( (wsbasetype ($ni)),
                ($Awfif::memes-> {snnh} {wsi} + $ni),
                $Awfif::memes-> {snnh}{partscategory},
                $Awfif::wsol-> {l} [$ani][2],
                $ani);
          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} + $Awfif::memes-> {batp};
# send activation to the involved Slipnet nodes
          &actnodes ( $Awfif::memes-> {snnh}{partscategory}, $Awfif::memes-> {openatype});
          &actnodes ( $Awfif::memes-> {snnh} {wsi}, $Awfif::memes-> {openato});
          &invcaches (wsbasetype ($ni));
          };#part can be built
        };#part is not whole yet
      }# got a pair to work on

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# partbuilder1
#
#<!-- end tag sm -->
Market Centric Workshops
The Physics - Politics, Economics & Evolutionary Psychology
Politics, Economics & Evolutionary Psychology

Business Physics
Nature and nurture drive the business eco-system
Human nature
Emerging structure and dynamic forces of adaptation


integrating quality appropriate for each market
 
This page looks at schematic structures and their uses.  It discusses a number of examples:
  • Schematic ideas are recombined in creativity. 
  • Similarly designers take ideas and rules about materials and components and combine them. 
  • Schematic Recipes help to standardize operations. 
  • Modular components are combined into strategies for use in business plans and business models. 

As a working example it presents part of the contents and schematic details from the Adaptive Web Framework (AWF)'s operational plan. 

Finally it includes a section presenting our formal representation of schematic goals. 
Each goal has a series of associated complex adaptive system (CAS) strategy strings. 
These goals plus strings are detailed for various chess and business examples. 
Strategy
| Design |
This page uses an example to illustrate how:
  • A business can gain focus from targeting key customers,
  • Business planning activities performed by the whole organization can build awareness, empowerment and coherence. 
  • A program approach can ensure strategic alignment. 
Program Management
| Home

Profiles | Papers | Glossary | E-mail us