VIS · GPT-5.6-Terra · C6++

IEEE VIS author-community analysis — C6++ · implemented

C6++

Designed by GPT-5.6-Terra. Attempt to implement the model's own C6+ self-critique as a revised ATWL representation (continuing the C6+ chat). ↓ download raw .atwl

Workflow header & template

workflow ieee-vis-community-evolution-revised template: characterise → visualise → assess → generate-knowledge → define-unit → characterise → define-unit → loop(build-model → define-unit → characterise → build-model → define-unit → characterise → contextualise → visualise → abstract → assess) → characterise → loop(build-model → define-unit → characterise → visualise → abstract → assess) → loop(define-unit → characterise → contextualise → visualise → abstract → assess) → loop(define-unit → build-model → define-unit → characterise → build-model → define-unit → define-unit → characterise → visualise → assess) → generate-knowledge description: "Identify and interpret evolving, overlapping collaboration communities in IEEE VIS publications. The workflow characterises community cores, leaders, topical foci, membership overlap, and lineage events while documenting methodological decisions and uncertainty."

Input Data, Domain Knowledge, And Initial Control Specifications

artifact D_papers_raw : entities origin: given internal structure: elementary embedment: {set, time} features: - id: paper_id value structure: atomic value type: reference description: "Paper identifier" - id: publication_year value structure: atomic value type: temporal description: "Publication year, 1990--2024" - id: venue value structure: atomic value type: categorical description: "VIS, InfoVis, VAST, or SciVis" - id: authors value structure: list value type: reference description: "DBLP-disambiguated author identifiers and raw names" - id: bibliographic_text value structure: vector value type: text description: "Title, abstract, and keywords" - id: citation_information value structure: relational configuration value type: {numeric, reference} description: "Citation links where available, otherwise citation counts" description: "Raw IEEE VIS conference-paper records" artifact K_domain_knowledge : knowledge(D_papers_raw) origin: given representation form: "annotations, taxonomies, and interpretive criteria" description: "Visualization-domain knowledge used to interpret research foci, venue history, plausible collaboration structures, and events" artifact K_provenance_seed : knowledge(D_papers_raw) origin: given representation form: "empty provenance protocol" description: "Initial protocol for recording specifications, revisions, visual evidence, analyst annotations, and reasons for decisions" artifact S_temporal_views : specification origin: given representation form: "configuration schema" description: "Candidate annual, rolling three- or five-year, and broad-era temporal views" artifact S_community_analysis : specification origin: given representation form: "configuration schema" description: "Initial co-authorship weighting, overlapping-community method, resolution range, weak-tie treatment, and candidate temporal-window settings" artifact S_quality_criteria : specification origin: given representation form: "quality criteria and thresholds" description: "Initial criteria for minimum community size and duration, cohesion, separation, persistence, topical coherence, and interpretability" artifact S_role_definition : specification origin: given representation form: "role-definition rules" description: "Rules defining stable-core members, leaders, peripheral contributors, and boundary spanners; includes persistence horizon, membership threshold, repeated-collaboration requirement, and the relative use of centrality, productivity, brokerage, and impact" artifact S_topic_analysis : specification origin: given representation form: "configuration schema" description: "Text preprocessing, generic-term treatment, topic-model family, topic-count range, coherence criteria, and permitted edits" artifact S_multi_community_attribution : specification origin: given representation form: "allocation rules" description: "Rules for allocating papers associated with authors who belong to multiple communities: weighted fractional allocation, full-membership evidence view, and primary-community reporting view" artifact S_lineage_matching : specification origin: given representation form: "matching rules and thresholds" description: "Rules for continuation, growth, merge, split, birth, dissolution, temporary disappearance, and reorientation; includes relative weighting of stable-core overlap, total membership overlap, topical similarity, and collaboration-structure similarity" artifact S_robustness_analysis : specification origin: given representation form: "resampling and sensitivity settings" description: "Alternative time windows, tie weights, filters, resolutions, attribution rules, topic settings, resampling unit, number of resamples, agreement measures, and robust/tentative/uncertain labels" artifact S_explanation_standard : specification origin: given representation form: "evidence hierarchy" description: "Rules distinguishing descriptive structural observations, evidence-backed hypotheses, and externally corroborated explanations; prohibits causal claims from bibliographic evidence alone" assign: K_provenance_current := K_provenance_seed

Data Audit, Citation-Semantics Decision, And Cleaning Policy

transform T_audit_records : intent: characterise manner: "compute data quality and citation-availability statistics" input: D_papers_raw output: F_record_quality, F_citation_availability actor: machine description: "Identify duplicate papers, missing author or text fields, unusually large author teams, yearly venue coverage, and whether citations are links, counts, both, or unavailable" artifact F_record_quality : feature(D_papers_raw) value structure: vector value type: {numeric, categorical} description: "Completeness, duplication, author-team-size, and venue- coverage indicators" artifact F_citation_availability : feature(D_papers_raw) value structure: vector value type: categorical description: "Availability and semantics of citation links and counts" transform T_visualise_audit : intent: visualise manner: "temporal coverage and quality overview" input: D_papers_raw, F_record_quality, F_citation_availability output: V_data_audit actor: machine description: "Show yearly publication counts by venue, missingness, duplicates, team sizes, and citation-data availability" artifact V_data_audit : visualisation(D_papers_raw, F_record_quality, F_citation_availability) layout: "aligned venue timelines and linked quality summaries" form: "stacked bars, distributions, and record inspector" encoding: "time and venue determine publication-count displays; colour and highlighting identify quality and citation-data conditions" description: "Audit interface for corpus coverage and record quality" transform T_assess_audit : intent: assess manner: "judge corpus adequacy and citation semantics" input: V_data_audit, F_record_quality, F_citation_availability, K_domain_knowledge, S_quality_criteria output: K_audit_assessment actor: human description: "Assess data quality, treatment of duplicates and missing fields, effects of venue coverage, and the appropriate analytical use of available citation information" artifact K_audit_assessment : knowledge(D_papers_raw, F_record_quality, F_citation_availability) representation form: "quality judgment and data-treatment decisions" description: "Analyst judgment of corpus adequacy and citation semantics" transform T_formulate_data_policy : intent: generate-knowledge manner: "formulate methodological policy and provenance entry" input: K_audit_assessment, K_provenance_current output: S_cleaning_policy, S_citation_scope, K_provenance_after_audit actor: human description: "Externalise reproducible cleaning and inclusion rules and decide whether citations are excluded, used only as impact indicators, or analysed as citation links" artifact S_cleaning_policy : specification representation form: "data-cleaning and inclusion rules" description: "Versioned policy for duplicate resolution, missing-text handling, author-team-size treatment, isolated-author inclusion, and venue-coverage qualifications" artifact S_citation_scope : specification representation form: "citation-analysis method choice" description: "Decision specifying whether citation information is used as impact only, as within-corpus links, as external links, or not used" artifact K_provenance_after_audit : knowledge(K_audit_assessment, S_cleaning_policy, S_citation_scope) representation form: "provenance record" description: "Recorded audit evidence and adopted data and citation policy" assign: K_provenance_current := K_provenance_after_audit transform T_prepare_records : intent: define-unit manner: "filter, deduplicate, and normalise" input: D_papers_raw, S_cleaning_policy output: D_papers actor: machine description: "Create an analysis-ready corpus while retaining DBLP identifiers, raw display names, clean bibliographic text, and policy- compliant paper records" artifact D_papers : entities internal structure: elementary embedment: {set, time} features: - id: publication_year value structure: atomic value type: temporal description: "Validated publication year" - id: venue value structure: atomic value type: categorical description: "Publication venue" - id: author_ids value structure: list value type: reference description: "Validated DBLP author identifiers" - id: clean_text value structure: vector value type: text description: "Normalised title, abstract, and keywords" description: "Prepared paper corpus"

Author Network And Temporal Snapshots

transform T_define_authors : intent: define-unit manner: "group-by-entity" input: D_papers output: D_authors, F_authorship actor: machine description: "Define unique researchers and preserve paper--author affiliations" artifact D_authors : entities internal structure: group/cluster embedment: set features: - id: author_id value structure: atomic value type: reference description: "DBLP author identifier" - id: display_names value structure: list value type: text description: "Raw names retained for display and checking" description: "Researchers represented through associated papers" artifact F_authorship : feature(D_papers) value structure: relational configuration value type: reference representation form: "paper--author bipartite network" description: "Complete authorship relationships" transform T_characterise_relations : intent: characterise manner: "define fractional co-authorship relations and encode text" input: D_papers, D_authors, F_authorship output: F_coauthorship, F_text_representation actor: machine description: "Compute fractionally weighted temporal co-authorship ties and a machine-processable document representation" artifact F_coauthorship : feature(D_authors) value structure: relational configuration value type: numeric representation form: "weighted temporal co-authorship network" description: "Co-authorship ties whose contribution is normalised within each paper's author team" artifact F_text_representation : feature(D_papers) value structure: matrix value type: numeric representation form: "document-term matrix" description: "Text representation of normalised bibliographic content" transform T_define_snapshots : intent: define-unit manner: "time-partitioning and network aggregation" input: D_papers, D_authors, F_coauthorship, S_temporal_views output: D_network_snapshots actor: machine description: "Construct annual, rolling-window, and broad-era weighted co-authorship network snapshots" artifact D_network_snapshots : entities internal structure: formation embedment: time features: - id: window_extent value structure: atomic value type: temporal description: "Snapshot time interval" - id: edge_weight value structure: relational configuration value type: numeric description: "Weighted co-authorship ties" description: "Temporal collaboration-network snapshots" assign: S_community_current := S_community_analysis S_quality_current := S_quality_criteria S_role_current := S_role_definition

Joint Community-Structure And Lightweight Topical-Screening Loop

loop L_community_refinement: purpose: "Find overlapping communities that are structurally coherent, temporally persistent, topically intelligible, and useful to the analyst" until: "The community structure satisfies the current quality criteria, including structural and lightweight topical-screening evidence" body: transform T_fit_community_model : intent: build-model manner: "fit overlapping community-detection model" input: D_network_snapshots, F_coauthorship, S_community_current output: M_community_model actor: machine description: "Fit candidate overlapping community memberships for each temporal network snapshot" artifact M_community_model : model(D_network_snapshots, F_coauthorship) model type: "overlapping community-detection model" representation form: "membership-weight and resolution parameters" description: "Candidate dynamic overlapping community structure" transform T_define_communities : intent: define-unit manner: "derive weighted overlapping groups" input: D_network_snapshots, D_authors, M_community_model output: D_communities, F_community_membership actor: machine description: "Define community instances and author membership weights for each temporal window" artifact D_communities : entities internal structure: group/cluster embedment: time description: "Candidate overlapping author communities" artifact F_community_membership : feature(D_authors) value structure: matrix value type: numeric representation form: "author x community-time membership weights" description: "Strength of every author's membership in communities across time" transform T_characterise_community_structure : intent: characterise manner: "compute role, persistence, and network metrics" input: D_communities, D_authors, F_community_membership, F_coauthorship, S_role_current output: F_author_roles, F_community_metrics actor: machine description: "Compute candidate stable cores, leaders, peripheral contributors, and boundary spanners according to explicit role rules" artifact F_author_roles : feature(D_authors) value structure: vector value type: {categorical, numeric, temporal} description: "Time-resolved role labels and supporting persistence, within-community, brokerage, productivity, and impact measures" artifact F_community_metrics : feature(D_communities) value structure: vector value type: {numeric, temporal} description: "Size, density, separation, persistence, repeated- collaboration, overlap, productivity, and impact indicators" transform T_characterise_candidate_corpora : intent: characterise manner: "aggregate provisional community document corpora" input: D_papers, D_communities, F_community_membership, F_text_representation, S_multi_community_attribution output: F_candidate_community_corpora actor: machine description: "Create provisional weighted document corpora for topical screening of candidate communities" artifact F_candidate_community_corpora : feature(D_communities) value structure: matrix value type: numeric representation form: "weighted community-time document-term matrix" description: "Provisional textual evidence for each candidate community" transform T_fit_screening_topic_model : intent: build-model manner: "fit lightweight topical-screening model" input: F_candidate_community_corpora, S_topic_analysis output: M_screening_topic_model actor: machine description: "Estimate a lightweight topic representation used only to assess whether candidate communities have intelligible foci" artifact M_screening_topic_model : model(F_candidate_community_corpora) model type: "topic model" representation form: "compact topic-term and topic-community matrices" description: "Provisional topic model for community-solution assessment" transform T_define_screening_topics : intent: define-unit manner: "derive provisional topic groups" input: M_screening_topic_model, F_candidate_community_corpora output: D_screening_topics, F_screening_topic_profile actor: machine description: "Define provisional topics and their prevalence in candidate communities" artifact D_screening_topics : entities internal structure: group/cluster embedment: set description: "Provisional research-focus groups for screening" artifact F_screening_topic_profile : feature(D_communities) value structure: vector value type: numeric description: "Provisional topic prevalence and topical concentration per community-time instance" transform T_contextualise_community_states : intent: contextualise manner: "projection-based dynamic network-state map" input: D_network_snapshots, F_community_metrics output: D_state_space, A_snapshot_states actor: machine description: "Project snapshots so proximity represents similarity of their community-network structure" artifact D_state_space : entities internal structure: elementary features: - id: dimensions value structure: atomic value type: numeric description: "Two projection dimensions" description: "Computed network-state projection context" artifact A_snapshot_states : arrangement(D_network_snapshots) context: D_state_space principle: "similarity-preserving projection of network and community metrics" description: "Arrangement of temporal snapshots by structural similarity" transform T_visualise_community_candidates : intent: visualise manner: "coordinated community, role, and topical-screening views" input: D_communities, D_authors, F_community_membership, F_author_roles, F_community_metrics, A_snapshot_states, F_screening_topic_profile output: V_community_candidates actor: machine description: "Provide linked state-map, membership-history, core- periphery, NodeTrix-style, and provisional topical-profile views" artifact V_community_candidates : visualisation(D_communities, D_authors, F_community_membership, F_author_roles, F_community_metrics, A_snapshot_states, F_screening_topic_profile) layout: "state projection, temporal membership matrix, core-periphery summaries, selected-community matrices, and topical summaries" form: "projected points, ribbons, matrices, node-link diagrams, distributions, and topic bars" encoding: "colour denotes communities or topics; size and edge weight encode membership and collaboration strength; time orders snapshots" description: "Interactive workspace for inspecting candidate communities and their provisional research foci" transform T_interpret_community_patterns : intent: abstract manner: "perception-and-interpretation" input: V_community_candidates, F_author_roles, F_community_metrics, F_screening_topic_profile, K_domain_knowledge output: P_candidate_community_structure actor: human description: "Interpret salient communities, possible fragmentation, implausible merges, core and leader roles, overlap, and preliminary topical intelligibility" artifact P_candidate_community_structure : pattern(D_communities) representation form: "annotated candidate community descriptions" description: "Analyst interpretations of community structure and provisional intellectual coherence" transform T_assess_communities : intent: assess manner: "evaluate structural, temporal, role, and topical adequacy" input: D_communities, F_community_membership, F_author_roles, F_community_metrics, F_screening_topic_profile, V_community_candidates, P_candidate_community_structure, S_community_current, S_quality_current, S_role_current, K_domain_knowledge, K_provenance_current output: K_community_assessment, S_community_revised, S_quality_revised, S_role_revised, K_provenance_after_community_assessment actor: hybrid description: "Evaluate candidate communities against explicit thresholds and interpretive criteria; determine whether model settings, quality criteria, or role rules need justified revision" artifact K_community_assessment : knowledge(D_communities, F_community_metrics, F_screening_topic_profile) representation form: "quality judgment" description: "Assessment of cohesion, persistence, overlap, interpretability, topical intelligibility, and role validity" artifact S_community_revised : specification representation form: "revised community-analysis settings" description: "Justified revisions to method choice, resolution, temporal-window choice, weighting, or weak-tie treatment" artifact S_quality_revised : specification representation form: "revised quality criteria and thresholds" description: "Documented revisions to quality criteria when initial thresholds prove inappropriate for the corpus or historical period" artifact S_role_revised : specification representation form: "revised role-definition rules" description: "Documented revisions to stable-core, leader, peripheral, or broker definitions when evidence shows they are inadequate" artifact K_provenance_after_community_assessment : knowledge( K_community_assessment, S_community_revised, S_quality_revised, S_role_revised) representation form: "provenance record" description: "Recorded community-model settings, evidence, assessment, and rationale for accepted or revised choices" if K_community_assessment indicates refinement needed: then: assign: S_community_current := S_community_revised S_quality_current := S_quality_revised S_role_current := S_role_revised K_provenance_current := K_provenance_after_community_assessment else: assign: K_provenance_current := K_provenance_after_community_assessment exit loop L_community_refinement end loop L_community_refinement

Detailed Human-Steered Topic Characterisation

transform T_characterise_community_corpora : intent: characterise manner: "aggregate weighted and full-membership document corpora" input: D_papers, D_communities, F_community_membership, F_text_representation, S_multi_community_attribution output: F_community_corpora, F_full_membership_papers actor: machine description: "Build topic-model corpora using the selected fractional allocation rule while retaining full paper--community associations for inspection of interdisciplinary work" artifact F_community_corpora : feature(D_communities) value structure: matrix value type: numeric representation form: "weighted community-time document-term matrix" description: "Text corpus allocated to community-time instances" artifact F_full_membership_papers : feature(D_communities) value structure: relational configuration value type: reference representation form: "full paper-community association graph" description: "Unfractionated evidence linking papers to every associated community" assign: S_topic_current := S_topic_analysis S_attribution_current := S_multi_community_attribution loop L_topic_refinement: purpose: "Develop meaningful and traceable research-focus profiles for accepted communities" until: "Topics satisfy coherence and distinctness criteria, are meaningful to the analyst, and adequately describe community focus and change" body: transform T_fit_topic_model : intent: build-model manner: "fit interpretable topic model" input: F_community_corpora, F_text_representation, S_topic_current output: M_topic_model actor: machine description: "Fit an interpretable topic model to community-associated paper text" artifact M_topic_model : model(F_community_corpora, F_text_representation) model type: "topic model" representation form: "topic-term and topic-document matrices" description: "Model of research foci in the accepted communities" transform T_define_topics : intent: define-unit manner: "derive topic groups and topic mixtures" input: M_topic_model, F_community_corpora output: D_topics, F_topic_mixture, F_topic_terms actor: machine description: "Define topics, representative terms and papers, and community-time topic mixtures" artifact D_topics : entities internal structure: group/cluster embedment: set description: "Candidate research topics" artifact F_topic_mixture : feature(D_communities) value structure: vector value type: numeric description: "Topic prevalence profile for each community over time" artifact F_topic_terms : feature(D_topics) value structure: list value type: text description: "Ranked terms and representative papers for each topic" transform T_characterise_topic_change : intent: characterise manner: "compute topic trends and community similarity" input: D_topics, F_topic_mixture, F_topic_terms output: F_topic_trends, F_topic_similarity actor: machine description: "Compute persistent, emerging, declining, and shared topics, topical diversity, and community topical similarity" artifact F_topic_trends : feature(D_communities) value structure: vector value type: {numeric, temporal} description: "Topic prevalence, diversity, emergence, and decline" artifact F_topic_similarity : feature(D_communities) value structure: matrix value type: numeric representation form: "pairwise community topical-similarity matrix" description: "Topical similarity among community-time instances" transform T_visualise_topics : intent: visualise manner: "topic timeline and paper-evidence inspection" input: D_communities, D_topics, F_topic_mixture, F_topic_terms, F_topic_trends, F_full_membership_papers output: V_topics actor: machine description: "Show topic timelines, community-topic heatmaps, terms, representative papers, and full-membership evidence" artifact V_topics : visualisation(D_communities, D_topics, F_topic_mixture, F_topic_terms, F_topic_trends, F_full_membership_papers) layout: "aligned community timelines, topic heatmap, and paper inspector" form: "stacked areas, heatmaps, ranked lists, and document cards" encoding: "time determines horizontal position; topic colour and area or intensity encode topic prevalence" description: "Interactive interface for interpreting research foci" transform T_interpret_topics : intent: abstract manner: "name and refine research-focus patterns" input: V_topics, D_topics, F_topic_terms, K_domain_knowledge output: P_research_foci actor: human description: "Name topics, identify mixed or redundant topics, and interpret topical evolution using paper-level evidence" artifact P_research_foci : pattern(D_topics, D_communities) representation form: "named topic descriptions and temporal focus patterns" description: "Interpreted research foci characterising communities" transform T_assess_topics : intent: assess manner: "evaluate topic coherence, attribution adequacy, and usefulness" input: M_topic_model, V_topics, P_research_foci, F_topic_trends, S_topic_current, S_attribution_current, S_quality_current, K_provenance_current output: K_topic_assessment, S_topic_revised, S_attribution_revised, K_provenance_after_topic_assessment actor: human description: "Assess whether topics are coherent and distinct, whether allocation of multi-community papers is misleading, and whether topic settings require refinement" artifact K_topic_assessment : knowledge(D_topics, M_topic_model) representation form: "quality judgment" description: "Assessment of topic coherence, coverage, distinction, temporal interpretability, and attribution adequacy" artifact S_topic_revised : specification representation form: "revised topic-model settings and constraints" description: "Analyst-guided changes such as merging or splitting topics, removing generic terms, seeding concepts, or changing topic count" artifact S_attribution_revised : specification representation form: "revised multi-community allocation rules" description: "Justified adjustment of fractional, full-membership, or primary-community topic reporting" artifact K_provenance_after_topic_assessment : knowledge( K_topic_assessment, S_topic_revised, S_attribution_revised) representation form: "provenance record" description: "Recorded topic edits, attribution decisions, evidence, and assessment rationale" if K_topic_assessment indicates refinement needed: then: assign: S_topic_current := S_topic_revised S_attribution_current := S_attribution_revised K_provenance_current := K_provenance_after_topic_assessment else: assign: K_provenance_current := K_provenance_after_topic_assessment exit loop L_topic_refinement end loop L_topic_refinement

Lineage Matching, Event Review, And Lineage-Validation Loop

assign: S_lineage_current := S_lineage_matching loop L_lineage_validation: purpose: "Derive and validate community lineages and evolution events against membership, structural, topical, paper-level, and citation evidence" until: "Lineage links and event labels are sufficiently supported by the lineage rules and analyst review, with uncertainty explicitly recorded" body: transform T_define_lineages : intent: define-unit manner: "match communities across adjacent temporal windows" input: D_communities, F_community_membership, F_author_roles, F_topic_mixture, F_topic_similarity, S_lineage_current output: D_community_lineages, F_lineage_membership, F_event_candidates actor: hybrid description: "Match community instances across time, prioritising stable-core overlap while considering total membership, topical, and structural similarity" artifact D_community_lineages : entities internal structure: sequence embedment: set features: - id: lifespan value structure: atomic value type: temporal description: "Lineage time span" description: "Sequences of related community instances" artifact F_lineage_membership : feature(D_communities) value structure: relational configuration value type: reference representation form: "predecessor-successor lineage graph" description: "Inferred links between successive community instances" artifact F_event_candidates : feature(D_community_lineages) value structure: list value type: categorical description: "Candidate continuation, growth, merge, split, birth, dissolution, temporary-disappearance, and reorientation events" transform T_characterise_event_evidence : intent: characterise manner: "compute membership, topical, venue, paper, and citation evidence" input: D_authors, D_papers, D_communities, D_community_lineages, F_community_membership, F_author_roles, F_topic_mixture, F_event_candidates, S_citation_scope output: F_overlap, F_member_transitions, F_event_evidence actor: machine description: "Compute community overlap, mobile and simultaneous memberships, shared papers, core changes, topical change, venue shifts, and policy-compliant citation evidence" artifact F_overlap : feature(D_communities) value structure: matrix value type: numeric representation form: "time-resolved pairwise overlap matrix" description: "Shared membership between communities through time" artifact F_member_transitions : feature(D_authors) value structure: relational configuration value type: reference representation form: "author-to-community membership histories" description: "Researcher mobility and multiple-community participation" artifact F_event_evidence : feature(D_community_lineages) value structure: vector value type: {numeric, categorical, temporal, text} description: "Structural, membership, topic, paper, venue, and citation evidence for candidate events" artifact D_lineage_timeline : entities origin: given internal structure: elementary embedment: time features: - id: date value structure: atomic value type: temporal description: "Time position" description: "Temporal context for lineage displays" transform T_contextualise_lineages : intent: contextualise manner: "time-based lineage arrangement" input: D_communities, D_lineage_timeline, F_lineage_membership output: A_lineage_timeline actor: machine description: "Arrange community instances by time and lineage relations" artifact A_lineage_timeline : arrangement(D_communities) context: D_lineage_timeline principle: "temporal placement with lineage-preserving band positions" description: "Time-based arrangement of community instances" transform T_visualise_evolution : intent: visualise manner: "coordinated lineage, overlap, and evidence views" input: A_lineage_timeline, D_community_lineages, F_event_candidates, F_event_evidence, F_overlap, F_member_transitions, F_author_roles, F_topic_trends output: V_community_evolution actor: machine description: "Show lineage bands, membership ribbons, overlap matrix, selected-community network matrices, topic timelines, and linked evidence from papers and citations" artifact V_community_evolution : visualisation(A_lineage_timeline, D_community_lineages, F_event_candidates, F_event_evidence, F_overlap, F_member_transitions, F_author_roles, F_topic_trends) layout: "lineage bands with coordinated overlap, member, topic, and evidence-detail views" form: "alluvial bands, ribbons, heatmaps, matrices, node-link views, timelines, and document cards" encoding: "band width encodes activity; links encode lineage relation; colour identifies communities or topics; highlighting exposes members and supporting evidence" description: "Workspace for inspecting community evolution" transform T_review_evolution_events : intent: abstract manner: "perception-and-interpretation of evolution events" input: V_community_evolution, F_event_candidates, F_event_evidence, P_research_foci, K_domain_knowledge output: P_reviewed_evolution_events actor: human description: "Review candidate events and distinguish likely genuine structural change from sparse-data, windowing, or matching artifacts" artifact P_reviewed_evolution_events : pattern(D_community_lineages) representation form: "reviewed event annotations" description: "Analyst-reviewed community continuations, merges, splits, births, dissolutions, disappearances, and reorientations" transform T_assess_lineages : intent: assess manner: "validate lineage matching and event labels" input: D_community_lineages, F_lineage_membership, F_event_candidates, F_event_evidence, P_reviewed_evolution_events, S_lineage_current, S_quality_current, K_provenance_current output: K_lineage_assessment, S_lineage_revised, K_provenance_after_lineage_assessment actor: hybrid description: "Assess whether matching rules and event thresholds produce defensible lineages; identify uncertain events and decide whether matching policy should be revised" artifact K_lineage_assessment : knowledge(D_community_lineages, F_event_candidates, F_event_evidence) representation form: "quality judgment and uncertainty annotations" description: "Assessment of lineage validity, event confidence, and need for matching-rule revision" artifact S_lineage_revised : specification representation form: "revised matching rules and thresholds" description: "Justified revisions to core-overlap weighting, topical weighting, sparse-period treatment, event thresholds, or temporary- disappearance rules" artifact K_provenance_after_lineage_assessment : knowledge( K_lineage_assessment, S_lineage_revised) representation form: "provenance record" description: "Recorded lineage settings, event evidence, uncertainty, and rationale for accepted or revised matching decisions" if K_lineage_assessment indicates lineage refinement needed: then: assign: S_lineage_current := S_lineage_revised K_provenance_current := K_provenance_after_lineage_assessment else: assign: K_provenance_current := K_provenance_after_lineage_assessment exit loop L_lineage_validation end loop L_lineage_validation

Evidence-Bounded Explanation Of Evolution Events

transform T_formulate_event_explanations : intent: generate-knowledge manner: "formulate evidence-bounded explanatory statements" input: P_reviewed_evolution_events, P_research_foci, F_event_evidence, S_explanation_standard, K_domain_knowledge output: K_evolution_explanations actor: human description: "Formulate descriptions and hypotheses about why events occurred; classify each statement by the available evidence level and avoid unsupported causal claims" artifact K_evolution_explanations : knowledge(P_reviewed_evolution_events, P_research_foci, F_event_evidence) representation form: "annotated explanatory statements" description: "Evidence-bounded interpretations of community evolution, labelled as descriptive observation, evidence-backed hypothesis, or externally corroborated explanation when external evidence exists"

Robustness, Resampling, And Uncertainty Analysis

assign: S_robustness_current := S_robustness_analysis loop L_robustness_analysis: purpose: "Test whether substantive community, topic, lineage, and event findings persist under plausible alternative analytical choices" until: "The analyst has examined the specified sensitivity and resampling cases and can classify findings as robust, tentative, or uncertain" body: transform T_define_alternative_snapshots : intent: define-unit manner: "alternative time partitioning and resampling" input: D_papers, D_authors, F_coauthorship, S_robustness_current output: D_alternative_network_snapshots actor: machine description: "Create resampled or alternative-window collaboration snapshots according to the robustness specification" artifact D_alternative_network_snapshots : entities internal structure: formation embedment: time description: "Alternative or resampled temporal co-authorship snapshots" transform T_fit_alternative_community_model : intent: build-model manner: "fit alternative overlapping community model" input: D_alternative_network_snapshots, F_coauthorship, S_robustness_current output: M_alternative_community_model actor: machine description: "Fit community models under alternative resolutions, weights, filtering, window, and resampling choices" artifact M_alternative_community_model : model( D_alternative_network_snapshots, F_coauthorship) model type: "overlapping community-detection model" description: "Alternative community solution" transform T_define_alternative_communities : intent: define-unit manner: "derive alternative overlapping groups" input: D_alternative_network_snapshots, D_authors, M_alternative_community_model output: D_alternative_communities, F_alternative_membership actor: machine description: "Define alternative community memberships" artifact D_alternative_communities : entities internal structure: group/cluster embedment: time description: "Community instances from an alternative configuration" artifact F_alternative_membership : feature(D_authors) value structure: matrix value type: numeric description: "Alternative author-community membership weights" transform T_characterise_alternative_communities : intent: characterise manner: "compute alternative roles and topic corpora" input: D_alternative_communities, D_authors, F_alternative_membership, F_coauthorship, D_papers, F_text_representation, S_role_current, S_robustness_current output: F_alternative_roles, F_alternative_corpora actor: machine description: "Compute comparable role measures and alternative corpora, including the selected alternative attribution rule" artifact F_alternative_roles : feature(D_authors) value structure: vector value type: {categorical, numeric, temporal} description: "Roles computed for alternative community memberships" artifact F_alternative_corpora : feature(D_alternative_communities) value structure: matrix value type: numeric description: "Alternative community document corpora" transform T_fit_alternative_topic_model : intent: build-model manner: "fit alternative topic model" input: F_alternative_corpora, S_robustness_current output: M_alternative_topic_model actor: machine description: "Fit topic model under alternative preprocessing, topic-count, and attribution settings" artifact M_alternative_topic_model : model(F_alternative_corpora) model type: "topic model" description: "Alternative topical representation" transform T_define_alternative_topics : intent: define-unit manner: "derive alternative topic groups" input: M_alternative_topic_model, F_alternative_corpora output: D_alternative_topics, F_alternative_topic_mixture actor: machine description: "Define alternative research topics and mixtures" artifact D_alternative_topics : entities internal structure: group/cluster embedment: set description: "Topics from an alternative configuration" artifact F_alternative_topic_mixture : feature(D_alternative_communities) value structure: vector value type: numeric description: "Alternative community topic profiles" transform T_define_alternative_lineages : intent: define-unit manner: "match alternative communities across time" input: D_alternative_communities, F_alternative_membership, F_alternative_roles, F_alternative_topic_mixture, S_lineage_current output: D_alternative_lineages, F_alternative_events actor: machine description: "Derive alternative lineage and event structures" artifact D_alternative_lineages : entities internal structure: sequence embedment: set description: "Lineages from an alternative configuration" artifact F_alternative_events : feature(D_alternative_lineages) value structure: list value type: categorical description: "Alternative lineage-event labels" transform T_characterise_robustness : intent: characterise manner: "measure agreement and confidence across configurations" input: D_communities, D_community_lineages, F_community_membership, F_author_roles, F_topic_mixture, F_event_candidates, D_alternative_communities, D_alternative_lineages, F_alternative_membership, F_alternative_roles, F_alternative_topic_mixture, F_alternative_events, S_robustness_current output: F_result_robustness actor: machine description: "Compute agreement for memberships, stable cores, leaders, topics, lineages, and events across alternative and resampled runs" artifact F_result_robustness : feature(D_community_lineages) value structure: vector value type: {numeric, categorical} description: "Agreement scores, confidence intervals where applicable, and robust, tentative, or uncertain labels" transform T_visualise_robustness : intent: visualise manner: "comparative sensitivity display" input: F_result_robustness, D_communities, D_alternative_communities, D_community_lineages, D_alternative_lineages output: V_robustness actor: machine description: "Compare primary and alternative solutions and expose parameter-sensitive communities, topics, and events" artifact V_robustness : visualisation(F_result_robustness, D_communities, D_alternative_communities, D_community_lineages, D_alternative_lineages) layout: "aligned solution comparison and stability summaries" form: "matched lineage bands, agreement matrices, and stability plots" encoding: "alignment links comparable results; colour and opacity encode robustness category and agreement score" description: "Visual evidence for uncertainty assessment" transform T_assess_robustness : intent: assess manner: "judge sensitivity-analysis sufficiency" input: V_robustness, F_result_robustness, S_robustness_current, K_domain_knowledge, K_provenance_current output: K_robustness_assessment, S_robustness_revised, K_provenance_after_robustness_assessment actor: human description: "Judge whether examined alternatives are sufficient and classify final findings by robustness and uncertainty" artifact K_robustness_assessment : knowledge(F_result_robustness) representation form: "quality judgment and uncertainty classification" description: "Assessment of robustness coverage and confidence in communities, roles, topics, lineages, and events" artifact S_robustness_revised : specification representation form: "revised resampling and sensitivity settings" description: "Additional justified alternatives or resampling cases required for adequate uncertainty assessment" artifact K_provenance_after_robustness_assessment : knowledge( K_robustness_assessment, S_robustness_revised) representation form: "provenance record" description: "Recorded sensitivity cases, outcomes, uncertainty decisions, and rationale" if K_robustness_assessment indicates additional testing needed: then: assign: S_robustness_current := S_robustness_revised K_provenance_current := K_provenance_after_robustness_assessment else: assign: K_provenance_current := K_provenance_after_robustness_assessment exit loop L_robustness_analysis end loop L_robustness_analysis

Synthesis And Reporting

transform T_synthesise_findings : intent: generate-knowledge manner: "formulate evidence-linked analytical report" input: D_community_lineages, F_author_roles, F_community_metrics, P_research_foci, P_reviewed_evolution_events, K_evolution_explanations, F_result_robustness, K_robustness_assessment, K_provenance_current, S_cleaning_policy, S_citation_scope output: K_community_findings actor: human description: "Report active communities and long-term lineages, stable cores and leaders, research foci, membership overlap and mobility, reviewed evolution events, evidential status of explanations, and uncertainty" artifact K_community_findings : knowledge(D_community_lineages, P_research_foci, P_reviewed_evolution_events, F_result_robustness) representation form: "annotated report and reproducibility package" description: "Final evidence-linked account of the evolving intellectual structure of the IEEE VIS research community, including methodological provenance and uncertainty qualifications"