160 likes | 173 Views
Spectral embedding, longitudinal study, influence modeling, social networks
E N D
Accepted Papers ACM IEEE ASONAM 2015 list of accepted submissions (full-short-posters) is as follows (in no particular order): • Spectral Embedding of Directed Networks Quan Zheng and David Skillicorn • A Longitudinal Study of the Google App Market Bogdan Carbunar and Rahul Potharaju • Influence modelling using bounded rationality in social networks Dharshana Kasthurirathne, Michael Harre and Mahendra Piraveenan • Tweet Sentiment: From Classification to Quantification Wei Gao and Fabrizio Sebastiani • Weibo, and a Tale of Two Worlds Wentao Han, Xiaowei Zhu, Ziyan Zhu, Wenguang Chen, Weimin Zheng and Jianguo Lu • DIVa: Decentralized Identity Validation for Social Networks A Soliman, L Bahri, B Carminati, E Ferrari and Sarunas Girdzijauskas • Social Influence Computation and Maximization in Signed Networks with Competing Cascades A Srivastava, C Chelmis V Prasanna • I/O Efficient Algorithms for Exact Distance Queries on Disk-Resident Dynamic Graphs Y Lin, Xiaowei Chen and John C.S. Lui • Extract Diffusion Channels from Real-World Social Data: a Delay-Agnostic Learning of Transmission Probabilities S Lamprier et al • Structure-Preserving Sparsification of Social Networks Gerd Lindner, C Staudt, M Hamann, H Meyerhenke and Dorothea Wagner • Uncovering News-Twitter Reciprocity via Interaction Patterns Yue Ning, Sathappan Muthiah, Ravi Tandon and Naren Ramakrishnan • Collaboration Signatures Reveal Scientific ImpactYuxiao Dong, Reid Johnson, Yang Yang and Nitesh Chawla • Combining Propensity and Influence Models for Product Adoption Prediction I Verenich, R Kikas, M Dumas and Dmitri Melnikov • Social Restricted Boltzmann Machine: Human Behavior Prediction in Health Social Networks N Phan, D Dou, B Piniewski D Kil • Topological Resilience Analysis of Supply Networks under Random Disruptions and Targeted Attacks W Wang, N Street R Dematta • If walls could talk: Patterns and anomalies in Facebook wallposts P Devineni, Danai Koutra, Michalis Faloutsos and Christos Faloutsos • Near Linear-Time Community Detection in Networks with Hardly Detectable Community Structure A Rezaei, et al • Significant Edge Detection in Target Network by Exploring Multiple Auxiliary Networks Nan Du, Jing Gao, et al • Community-Based Prediction of Activity Change in Skype Irene Teinemaa, Anna Leontjeva, Marlon Dumas and Riivo Kikas • Rumor Spreading Maximization and Source Identification in a Social Network Wuqiong Luo, Wee Peng Tay and Mei Leng • Local Community Detection via Flow Propagation Costas Panagiotakis, Harris Papadakis and Paraskevi Fragopoulou • Modeling and Utilizing Dynamic Influence Strength for Personalized Promotion Ya-Wen Teng, Chih-Hua Tai, Philip Yu and • The Fragility of Twitter Social Networks Against Suspended Users Wei Wei, Kenneth Joseph, Huan Liu and Kathleen Carley • Investigating the types and effects of missing data in multilayer networks Rajesh Sharma, Matteo Magnani and Danilo Montesi • Social ties and checkin sites: Connections and latent structures in Location Based Social Networks Sudhir Kylasa, Giorgos Kolli • Measuring Article Quality in Wikipedia using the Collaboration Network Baptiste De La Robertie, Yoann Pitarch and Olivier Teste • Influence of Status on Consensus Building in Collaboration Networks Ilire Hasani-Mavriqi, Florian Geigl, Subhash Chandra P • Multi-state Open Opinion Model based on Positive and Negative Social Influences Yuan-Chang Chen, Hao-Shang Ma and Jen • Beyond Friendships and Followers: The Wikipedia Social Network Johanna Geiß, Andreas Spitz and Michael Gertz • Reciprocal Recommendation System for Online Dating Peng Xia, Benyuan Liu, Yizhou Sun and Cindy Chen • Public Information Exposure Detection:Helping Users Understand Their Web Footprints Lisa Singh, Grace Hui Yang, Micah Sherr • Utilizing Non-QA Data to Improve Questions Routing for Users with Low QA Activity in CQA Ivan Srba, Marek Grznar and • Networking in Child Exploitation – Assessing disruption strategies using registrant information Russell Allsup, Evan Thomas, • Pairwise structural role mining for user categorization in information cascades Sarvenaz Choobdar, Pedro Ribeiro and Fernando Silva • Predicting Small Group Accretion in Social Networks: A topology based incremental approach Ankit Sharma, Rui Kuang • On Mining User Lifestyles from Trip Data Meng-Fen Chiang, Ee-Peng Lim and Jia-Wei Low • CS-ComDet: A Compressive Sensing Approach for Inter-Community Detection in Social Networks Hamidreza Mahyar • Social Network Analysis of Program Committees and Paper Acceptance Fairness Chen Avin, Zvi Lotker, David Peleg and Itzik • Fine-Grained Geolocalisation of Non-Geotagged Tweets Pavlos Paraskevopoulos and Themis Palpanas • Identification of Key Locations based on Online Social Network Activity Hariton Efstathiades, Demetris Antoniades, George Pallis • Combining Heterogeneous Data Sources for Civil-Unrest Forecasting Gizem Korkmaz, Jose Cadena, Chris Kuhlman, Achla • Multiplex networks: a Generative Model and Algorithmic Complexity Matthew Dippel, Ravi Sundaram and Prithwish Basu • Network vs Market Relations: The Effect of Strategic Friendships in Crowdfunding Emőke-Ágnes Horvát, Jayaram Uparna and Br • Recurrent Subgraph Prediction Saurabh Nagrecha, Nitesh Chawla and Horst Bunke • Hierarchies, Ties and Power in Organisational Networks: Model and Analysis Jiamou Liu and Anastasia Moskvina • A Tempest in a Teacup?\Analyzing Firestorms on Twitter Hemank Lamba, Jürgen Pfeffer and Momin Malik • Leak Sinks: The Threat of Targeted Social Eavesdropping Yasmin Bokobza, Abigail Paradise, Guy Rapaport, Rami Puzis, • #mytweet via Instagram: Exploring User Behaviour across Multiple Social Networks Bang Hui Lim, Dongyuan Lu, Tao Chen • Reverse Engineering Socialbot Infiltration Strategies in Twitter Carlos Freitas, Fabricio Benevenuto, Saptarshi Ghosh and Adri • Phonetic Normalization of Microtext Richard Khoury • Group Lending to a Borrower Network: A Partial Joint Liability model with Social Collaterals Usha Sridhar and Sridhar Mandyam • Bandwagon Effect in Facebook Discussion Groups Keith C. Wang, Chun-Ming Lai, Yun-Chieh Sung and S. Felix Wu • Private Location Based Infiltration Attack Detection in Social Networks Bogdan Carbunar, Rahul Potharaju, Mozhgan Azimpourkivi • Is Normalized Mutual Information a Fair Measure for Comparing Community Detection Methods? Alessia Amelio and CPizzuti • Signed Social Networks: Link Prediction and Overlapping Community Detection Mohsen Shahriari and Ralf Klamma • Overlapping Communities via k-Connected Ego Centered Groups Günce Keziban Orman, Onur Karadeli and Emre Çalışır • Finding Posts in Digital Libraries of Authors with Garbled Names Adam Ondrejka, Petr Saloun, Jakub Stonawski and Ivan Zelinka • Mining Streaming Tweets for Real-Time Event Credibility Prediction in Twitter Jun Zou, Faramarz Fekri and Steven McLaughlin • Toward Order-of-Magnitude Viral Cascade Prediction in Social Networks Ruocheng Guo, Elham Shaabani, A Bhatnagar P Shakarian • Opinion Mining in Twitter ~How to Make Use of Sarcasm to Enhance Sentiment Analysis~ Mondher Bouazizi and Tomoaki Ohtsuki • Exploring Visual Stability in Dynamic Graph Drawings: A Case Study Alfredo Ramos Lezama, I Chounta, T Göhnert H. U Hoppe • Reformulations of the Map Equation for Community Finding and Blockmodelling Neil Hurley and Erika Duriakova • Reconstructing Dynamic Social Network by Choosing Local Maximum Degree Substitute Yu-Hao Ke, Shiou-Chi Li, Jen-Wei Huang • Privacy Preservation in Social networks through alpha – anonymization techniques Saptarshi Chakraborty and Bala Krushna Tripathy • Enriching Arabic Tweets Representation based on Web Search Engine and the Rough Set Theory Mohammed Bekkali, Issa • Modelling time evolving interactions in networks through a non stationary extension of stochastic block models Marco Corneli, • Uncovering the Structure of Knowledge Exchange in a MOOC Discussion Forum Tobias Hecking, Andreas Harrer and H. Ulri • Mood Prediction in Social Media Mahnaz Roshanaei, Richard Han and Shivakant Mishra • Dynamics of Multi-Campaign Propagation in Online Social Networks Thejaswi M, Sriniketh Vijayaraghavan, Avinash Das and • Hybrid Epidemic Model for Deindividuation and Antinormative Behavior in Online Social Networks Cong Liao, Anna Squicciarini • Discovery of Latent Content Topics for Timely News Popularity Prediction Moayad Alshangiti and Qi Yu • On Influence Maximization to Target Users in the Presence of Multiple Acceptances Chien-Wei Chang, Mi-Yen Yeh and Kun- • AttitudeBuzz: Using Social Media Data to Localize Complex Attitudes Jason Cohn, Alex Kuntz and Larry Birnbaum • Understanding Spreading Patterns on Social Networks Based on Network Topology Yayati Gupta, Sudarshan Iyengar and Akrati • Graph Traversal-based Fast Community Detection in Social Networks P Basuchowdhuri, V Nagarajan, S Gupta, Khusbu Mishra • EnTwine: Feature Analysis and Candidate Selection for Social User Identity Aggregation Niyati Chhaya, Dhwanit Agarwal, Pai • Exploring a Scalable Solution to Identifying Events in Noisy Twitter Streams Shamanth Kumar, Sameep Mehta, L. Venkat • Believe it or Not? Analyzing Information Credibility in Microblogs Byungkyu Kang, Tobias Hollerer and John O'Donovan • Community Detection in Social Network with Pairwisely Constrained Symmetric Non-Negative Matrix Factorization Shi Xiaohua • Event Detection: Exploiting Socio-Physical Interactions in Physical Spaces Kasthuri Jayarajah, Archan Misra, Xiao-Wen Ruan and Ee- • HyperCubeMap: Optimal Social Network Ad Allocation Using Hyperbolic Embedding Hui Miao, Peixin Gao • Differentially Private Publication of Social Graphs at Linear Cost Huu-Hiep Nguyen, Abdessamad Imine and Michael Rusinowitch • Influence of the Null-Model on Motif Detection Influence of the Null-Model on Motif Detection Wolfgang Eugen Schlauch and K • Targeted Dot Product Representation for Friend Recommendation in Online Social Networks Minh Dao, Akshay Rangamani, Sang • Finding the Right Social Media Site for Questions Isaac Jones, Xia Hu and Huan Liu • Trust Inference in Online Social NetworksAthanasios Papaoikonomou, Magdalini Kardara and Theodora Varvarigou • Community-centric analysis of user engagement in Skype social network Giulio Rossetti, Luca Pappalardo, Riivo Kikas, Dino Pedr • Interaction Prediction in Dynamic Networks exploiting Community Discovery Giulio Rossetti, Riccardo Guidotti, Diego Pennacchioli, • Breaking the News: Extracting the Sparse Citation Network Backbone of Online News Articles Andreas Spitz and Michael Gertz • Information Spread in Social Networks through Scheduling Seeding Methods Alon Sela, Irad Ben-Gal, Alex Pentland • Multi-Level Anomaly Detection on Time-Varying Graph Data Robert Bridges, John Collins, Erik Ferragut, Jason Laska Sullivan • Using weak ties to understand resource usage behaviors in an online community of educators Ogheneovo Dibie and Tamara Sumner • Modeling Social Network Topology with Variable Social Vector Clocks Ta-Yuan Hsu and Ajay D. Kshemkalyani • Exploiting Phase Transitions for the Efficient Sampling of the Fixed Degree Sequence Model Christian Brugger, André Lucas • Characterization of cross-posting activity for professional users across Facebook, Twitter and Google+ Reza Farahbakhsh, Ángel • Identification and characterization of cyberbullying dynamics in an online social network Anna Squicciarini, Sarah Rajtmajer, • A Dynamic Algorithm for Local Community Detection in Graphs Anita Zakrzewska and David Bader • Actions are louder than words in social media Rostyslav Korolov, Justin Peabody, Allen Lavoie, Sanmay Das, Malik Magdon-Ismail • Real-time Detection of Prominent Users during Specific Events by Learning On- and Off-topic Features of User Activities Imen • On the Skewed Degree Distribution of Hierarchical Networks Bijan Ranjbar-Sahraei, Haitham Bou Ammar, Karl Tuyls and Gerhard s • ''Got to have faith!'': The DEvOTION algorithm for delurking in social networks Roberto Interdonato, Chiara Pulice and Andrea • Toward Understanding the Mobile Social Properties: An Analysis on Instagram Photo-Sharing Network Shan Yun Teng, Mi-Yen • From Coincidence to Purposeful Flow? Properties of Transcendental Information Cascades Markus Luczak-Roesch, Ramine Tinati, • Towards Topic Following in Heterogeneous Information Networks Deqing Yang, Yanghua Xiao, Hanghang Tong, Wanyun Cui and • Hunting Organization-Targeted Socialbots Abigail Paradise, Asaf Shabtai and Rami Puzis • Analysis of Spatially Oriented Topic Versatility over Time on Social Media Gwan Jang and Sung-Hyon Myaeng • Human behaviour in different social medias : A case study of Twitter and Disqus Hasan Al Maruf, Nagib Meshkat, Mohammed Eunus • Finding Non-Redundant Multi-Word Events on Twitter Nikou Guennemann and Juergen Pfeffer • Presence of an Ecosystem: a catalyst in the Knowledge Building Process in Crowdsourced Annotation Environments Anamika • Time-aware Egocentric network-based User Profiling Marie-Françoise Canut, Sirinya On-At, André Péninou and Florence Sedes • Node Embeddings in Social Network Analysis Thuy Vu and D. Stott Parker • Who is More Positive in Private? Analyzing Sentiment Differences across Privacy Levels and Demographics in Facebook Chats,Posts • Mining Complaints for Traffic-Jam Estimation: A Social Sensor Application Theodore Georgiou, Amr El Abbadi, Xifeng Yan and • Role and position detection in networks: reloaded Davide Vega, Matteo Magnani, Roc Meseguer and Felix Freitag • Forecasting High Tide: Predicting Times of Elevated Activity in Online Social Media Jimpei Harada, David Darmon, Michelle Girvan • Careful what you share in six seconds: Detecting cyberbullying instances in Vine Rahat Rafiq, Homa Hosseinmardi, Sabrina Mattson, • Social Event Extraction: Task, Challenges and Techniques Hao Li, Lin Zhao and Heng Ji • Discovering Obscure Sightseeing Spots by Analysis of Geo-tagged Social Images Chenyi Zhuang, Qiang Ma, Xuefeng Liang and Little • Bad Concerns: Using Sentiment Analysis to Assess Structural Balance in Communication Networks Jana Diesner and Craig Evans • Unsupervised Graph-Based Patterns Extraction for Emotion Classification Carlos Argueta, Yi-Shin Chen and Elvis Saravia • Statistical mechanics approach for collaborative business social network reconstruction Angelo Corallo, Cristian Bisconti, Laura • Leveraging Rating Behavior to Predict Negative Social Ties Luc-Aurélien Gauthier, Benjamin Piwowarski and Patrick Gallinari • Network Completion with Node Similarity: A Matrix Completion Approach with Provable Guarantees Farzan Masrour, Ima
ACM IEEE ASONAM 2015Accepted Tutorials • Bot Detection in Social Media: Networks, Behavior, and EvaluationFred Morstatter, Kathleen M. Carley, and Huan Liu • Core Decomposition: Algorithms and ApplicationsFragkiskos D. Malliaros, Michalis Vazirgiannis, and Apostolos N. Papadopoulos • Analysis and mining of multiple social networks Matteo Magnani • Principles, models, and methods for the characterization and analysis of lurkers in online social networks Roberto Interdonato and Andrea Tagarelli • Subgroup Discovery and Community Detection on Attributed Graphs M Atzmueller workshops in conjunction with ACM IEEE ASONAM 2015. • Advances of Social Media K-H Networks (KHNetwork 2015) • Organizers: • Ahmed Abdeen Hamed, University of Vermont, USA ahamed@uvm.edu • Multiplex & Attributed Networks Mining (MANEM2015) • Organizers: • Rushed Kanawati, Universite Paris-Nord, France rushed.kanawati@lipn.univ-paris13.fr • Christine Largeron, Jean Monnet University, Saint-Etienne, France christine.Largeron@univ-st-etienne.fr • I-Hsien Ting, National University of Kaohsiung, Taiwan iting@nuk.edu.tw • The 6th International Workshop on Mining and Analyzing Social Networks for Decision Support (MSNDS2015) • Organizers: • I-Hsien Ting, National University of Kaohsiung, Taiwan iting@nuk.edu.tw • Chung-Hong Lee, National Kaohsiung of Technology and Applied Sciences, Taiwan • Chen-Shu Wang, National Taipei University of Technology, Taiwan • The 5th International Workshop on Social Network Analysis in Applications (SNAA2015) • Organizers: • Piotr Brodka, Wroclaw University of Technology, Poland piotr.brodka@pwr.wroc.pl • Katarzyna Musial, King’s College London, United Kingdom katarzyna.musial@kcl.ac.uk • Marcin Budka, Bournemouth University, United Kingdom • 1st International Workshop on Dynamics in Networks (DyNo2015) • Organizers: • Giulio Rossetti, University of Pisa, Italy giulio.rossetti@unipi.it • Anna Monreale, University of Pisa, Italy anna.monreale@unipi.it • Dashun Wang, IBM Watson, USA dashun@us.ibm.com • SoMeRis: Social Media and Risk (SoMeRiS2015) • Organizers: • Stéphane Gaïffas, Ecole Polytechnique, France stephane.gaiffas@cmap.polytechnique.fr • Michalis Vazirgiannis, Ecole Polytechnique, France mvazirg@lix.polytechnique.fr • Resilience in Social Network: Trends and Dynamics (RSN2015) • Organizers: • Soumya Banerjee, Birla Institute of Technology soumyabanerjee@bitmesra.ac.in • Serpil Tokdemir, University of Arkansas at Little Rock sxtokdemir@ualr.edu • Nitin Agarwal, University of Arkansas at Little Rock nxagarwal@ualr.edu Keynote Speakers Interpersonal Trust Dynamics in Online Systems – Models and ApplicationsJ Jaideep Srivastava University of Minnesota, USA and Qatar Foundation, QatarAbstract • Understanding the nature of online interpersonal trust continues to gain importance, especially as we increasingly perform activities and form relationships online. Trust forms a critical substrate on which activities with economic consequence, e.g. e-commerce transactions, or relationships with emotional consequence, e.g. friendships and romances, are built. There is a vast literature on interpersonal trust in the social sciences. However, with the mass adoption of the Internet in our daily lives, and the ability to capture high resolution data on its use, we are at the threshold of a deeper understanding of the dynamics behind interpersonal trust. It is now becoming possible to study the phenomenon of trust dynamics at a much finer granularity than ever before. Online social systems such as Multiplayer Online Games (MOGs) and Virtual Worlds (VWs) have become increasingly popular and have communities comprising tens of millions. They serve as unprecedented tools to theorize and empirically model the trust dynamics of individuals, groups, and networks within large communities. This talk consists of four parts. First, we describe findings from the Virtual World Exploratorium; a multi-institutional, multi-disciplinary project which uses data from commercial MMOGs and VWs to study many fields of social science, including sociology, social psychology, organization theory, group dynamics, macro-economics, etc. Second, describe a model for a multi-relational, multi-activity environment, where ‘low familiarity threshold’ activities like chatting, grouping, and transactions form the scaffolding for the formation of ‘high familiarity threshold’ relationships like trust formation. Third, using this model, we describe our studies on the dynamics of online interpersonal trust, including like trust formation, trust reciprocation, trust revocation, and the nature of trust transitivity and trust cascading. Finally, we describe some applications of this model for tasks like understanding the vulnerabilities of a social network to rumor spreading, and inoculation against it. Communities and privacy in mobile phone social networks Vincent Blondel Ucatholique de Louvain, Belgium • We describe several recent results on large network analysis with a special emphasis on community detection and on the analysis of mobile phone datasets. In particular, we describe the Louvain method that and can be routinely used for analyzing networks with billions of nodes or links. We analyze communities obtained on a nationwide dataset of criminal records, as well as on a social network constructed from mobile phone communications that span periods covering several months. We also describe applications of mobile phone dataset analysis for a range of applications such as urban planning, traffic optimization, monitoring of development policy, crisis management, and control of epidemics. With these applications in mind we overview results obtained in the ''Data for Development'' (D4D) challenge on the analysis of mobile phone datasets. We analyze the privacy threats of anonymized mobile phone dataset and show that human behavior puts fundamental natural constraints to the privacy of individuals. The Dynamics of Social Influence and Reputation Online Sinan Aral MIT Sloan School of Management, USA Identity and reputation drive some of the most important relational decisions we make online: Who to follow or link to, whose information to trust, whose opinion to rely on when choosing a product or service, and whose content to consume and share. Yet, we know very little about the dynamics of social influence and relational reputation and how they affect our decision making. Sinan will describe a series of large scale experiments that explore the behavioral dynamics catalyzed by social influence, identity and reputation online. He will explore some of the implications for bias in online ratings, social advertising and the ability to generate cascades of behavior through peer to peer influence in networks. Sinan will argue that new research on social influence and reputation could help guide our platform design and social policy decisions in light of the rising importance of peer effects and reputation online. Wisdom of Crowds or Wisdom of a Few?Ricardo Baeza-Yates Yahoo Labs, USA In this keynote we give an introduction to wisdom of crowds in the Web, the long tail of web content, and the bias involved in the generation of user generated content (UGC). This bias creates the wisdom of ad hoc crowds or the wisdom of a few. Although it is well known that user activity in most settings follows a power law, that is, few people do a lot, while most do nothing, there are few studies that characterize well this activity. In a recent analysis of social network data we corroborated that a small percentage of the active users (passive users are the majority) represent at least the 50% of the UGC. As a sub-product, we also found a lower bound for the digital desert, the content in the Web that nobody reads. These results implies that most of the wisdom comes from a few users, which is not surprising, as Web is a reflection of our society, where economical or political power in the hands of minorities Leveraging CompSocial Science to address Grand Societal ChallengesNoshir Contractor Northwestern U The increased access to big data about social phenomena in general, and network data in particular, has been a windfall for social scientists. But these exciting opportunities must be accompanied with careful reflection on how big data can motivate new theories and methods. Using examples of his research in the area of networks, Contractor will argue that Computational Social Science serves as the foundation to unleash the intellectual insights locked in big data. More importantly, he will illustrate how these insights offer social scientists in general, and social network scholars in particular, an unprecedented opportunity to engage more actively in monitoring, anticipating and designing interventions to address grand societal challenges.
To extend 2LE to PT: kListEh PT2hk=Ek after zeroing the h bit of Ek PTG1 E3 pred=(NPZ)|(PZ&AcyclicPathEnd) APTG1 APTG1 E3predicate = (NPZ&NotCycleEnd)| (PZ&AcyclicPathEnd) PTG1, extension of EG1 E 2-lev stri=|V|=4 SPTG1 Edge pTree, E, PathTree(PT), ShortestPathvTree(SPT),AcyclicPathTree(APT) andCycleList(CL) of G1 kListPT2hj PT3hjk=Ek after zeroing Ek j bit. G1 E3key 1,1,1 1,1,2 1,1,3 1,1,4 1,2,1 1,2,2 1,2,3 1,2,4 1,3,1 1,3,2 1,3,3 1,3,4 1,4,1 1,4,2 1,4,3 1,4,4 2,1,1 2,1,2 2,1,3 2,1,4 2,2,1 2,2,2 2,2,3 2,2,4 2,3,1 2,3,2 2,3,3 2,3,4 2,4,1 2,4,2 2,4,3 2,4,4 3,1,1 3,1,2 3,1,3 3,1,4 3,2,1 3,2,2 3,2,3 3,2,4 3,3,1 3,3,2 3,3,3 3,3,4 3,4,1 3,4,2 3,4,3 3,4,4 4,1,1 4,1,2 4,1,3 4,1,4 4,2,1 4,2,2 4,2,3 4,2,4 4,3,1 4,3,2 4,3,3 4,3,4 4,4,1 4,4,2 4,4,3 4,4,4 PE3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 PE2 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 E2key 1,1,1 1,1,2 1,1,3 1,1,4 1,2,1 1,2,2 1,2,3 1,2,4 1,3,1 1,3,2 1,3,3 1,3,4 1,4,1 1,4,2 1,4,3 1,4,4 2,1,1 2,1,2 2,1,3 2,1,4 2,2,1 2,2,2 2,2,3 2,2,4 2,3,1 2,3,2 2,3,3 2,3,4 2,4,1 2,4,2 2,4,3 2,4,4 3,1,1 3,1,2 3,1,3 3,1,4 3,2,1 3,2,2 3,2,3 3,2,4 3,3,1 3,3,2 3,3,3 3,3,4 3,4,1 3,4,2 3,4,3 3,4,4 4,1,1 4,1,2 4,1,3 4,1,4 4,2,1 4,2,2 4,2,3 4,2,4 4,3,1 4,3,2 4,3,3 4,3,4 4,4,1 4,4,2 4,4,3 4,4,4 1111 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , 2 1 APTG1 1 1 1 1 PTG1 1 1 1 1 (pred is NotPureZero) First, construct stride=|V|, 2-level Edge pTree, all others are constructed concurrently from it. 2LEG1 1 1 1 1 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 4 1 1 1 0 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 4 1 1 1 0 SPTG1, init E1=SP1,1E2=SP2,1E3=SP3,1 E4=SP4,1 4 1 1 1 0 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 kListPT3hij PT4hijk=Ek after zeroing i and j bits of Ek E 2levstr=4 pred=NPZ All are 3 hop cycles. Each has 3 start pts , 2 directions. Each repeat 6 times. 6/6=1 3hop cycles (1341) 1 1 0 0 1 1 2 1 0 0 0 1 3 1 1 0 0 1 4 1 1 1 1 0 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 4 1 1 1 0 1 0 0 1 1 1 0 0 1 1 2 0 0 0 1 2 0 0 0 1 3 1 0 0 1 3 1 0 0 1 4 1 1 1 0 4 1 1 1 0 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 4 1 1 1 0 3 4 CLG1 1 0 2 1 1 2 2 0 2 1 3 1 2 0 1 E one-level E 1lev, pred=NPZ 1341 3413 1431 PE1 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 0 EG1 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 0 E1 key 1,1 1,2 1,3 1,4 2,1 2,2 2,3 2,4 3,1 3,2 3,3 3,4 4,1 4,2 4,3 4,4 key 1,1 1,2 1,3 1,4 2,1 2,2 2,3 2,4 3,1 3,2 3,3 3,4 4,1 4,2 4,3 4,4 4134 3143 4314 1 3 0 0 0 1 1 4 0 1 1 0 2 4 1 0 1 0 3 1 0 0 0 1 3 4 1 1 0 0 4 1 0 0 1 0 4 3 1 0 0 0 1 3 0 0 0 1 1 4 0 1 1 0 2 4 1 0 1 0 3 1 0 0 0 1 3 4 1 1 0 0 4 1 0 0 1 0 4 3 1 0 0 0 1 2 0 1 0 0 2 2 1 0 1 0 3 2 0 1 0 0 1 3 4 0 1 0 0 2 4 1 0 0 1 0 2 4 3 1 0 0 0 3 1 4 0 1 0 0 1 3 4 1 1 0 0 1 4 3 1 0 0 0 2 4 1 0 0 1 0 2 4 3 1 0 0 0 3 1 4 0 1 1 0 4 3 1 0 0 0 1 3 4 1 0 0 1 0 4 1 3 0 0 0 1 At this point the SPT is completed. For Big Graphs, could stop here (e.g., Friends has ~1B vertices but a diameter of 4, so we would only need to build PT 4-hop paths) and possible expressed as a tree of lists rather than a tree of bitmaps. Also, for sparse BigGraphs, E could be leveled further and/or a tree of lists (then APT and SPT will be also). SPT(G)k (with k turned on) is a mask (where >0 means “yes”) for connectivity comp, COMP(G)k, containing the vertex, vk. For a bitmap of COMPk bit-slicing SPT (SPTk,h ... SPTk,0 k=1…|V|), then COMPk ORj=h..0SPTk,h. Also, the SPT structure may be more useful expressed as separate “categorical” bitmaps for each Shortest Path Length (SPk,h h=1..H. We also keep a mask of Shortest Paths so far, SPSFk vertex, k. With each new SP bitmap, SPB, SPSFkSPSFk| SPB, SPk,h+1 SPB & SPSFk. 1,1,1 1,1,2 1,1,3 1,1,4 1,2,1 1,2,2 1,2,3 1,2,4 1,3,1 1,3,2 1,3,3 1,3,4 1,4,1 1,4,2 1,4,3 1,4,4 2,1,1 2,1,2 2,1,3 2,1,4 2,2,1 2,2,2 2,2,3 2,2,4 2,3,1 2,3,2 2,3,3 2,3,4 2,4,1 2,4,2 2,4,3 2,4,4 3,1,1 3,1,2 3,1,3 3,1,4 3,2,1 3,2,2 3,2,3 3,2,4 3,3,1 3,3,2 3,3,3 3,3,4 3,4,1 3,4,2 3,4,3 3,4,4 4,1,1 4,1,2 4,1,3 4,1,4 4,2,1 4,2,2 4,2,3 4,2,4 4,3,1 4,3,2 4,3,3 4,3,4 4,4,1 4,4,2 4,4,3 4,4,4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , SPTprovides Connectivity Component Partition; Maximal Cliques (go across SPk,1 then look within subsets of those k’s for commonality); Note, Cliques are 0-plexes. Each mask, SPk,1 masks a 1-plex. Each SPk,1&SPk,2 masks a 2-plex (which is SPSFk,2? So if we save each SPSF instead of overwriting, we have k-plex masks w/o further work?), etc. Next construct predicates for each Path related data structures, PT APT SPT SPSF, to make them into pTrees on a k-path table, E, E2, E3, … SPSFk 1 0 0 1 1 2 0 0 0 1 3 1 0 0 1 4 1 1 1 0 1 3 0 0 0 1 1 4 0 1 1 0 2 4 1 0 1 0 3 1 0 0 0 1 3 4 1 1 0 0 4 1 0 0 1 0 4 3 1 0 0 0 1 4 0 1 1 0 3 1 0 0 0 1 4 1 0 0 1 0 4 3 1 0 0 0 1 3 0 0 0 1 2 4 1 0 1 0 3 4 1 1 0 0 1 3 4 1 1 0 0 2 4 1 0 0 1 0 2 4 3 1 0 0 0 3 4 1 0 0 1 0 4 1 3 0 0 0 1 1 4 3 1 0 0 0 3 1 4 0 1 1 0 4 3 1 0 0 0 1 1 3 4 0 1 0 0 2 4 1 0 0 1 0 2 4 3 1 0 0 0 3 1 4 0 1 0 0 E, PT, SPTandAPT of graph as predicate Trees on E(MaxPathLength). 1,1,1 1,1,2 1,1,3 1,1,4 1,2,1 1,2,2 1,2,3 1,2,4 1,3,1 1,3,2 1,3,3 1,3,4 1,4,1 1,4,2 1,4,3 1,4,4 2,1,1 2,1,2 2,1,3 2,1,4 2,2,1 2,2,2 2,2,3 2,2,4 2,3,1 2,3,2 2,3,3 2,3,4 2,4,1 2,4,2 2,4,3 2,4,4 3,1,1 3,1,2 3,1,3 3,1,4 3,2,1 3,2,2 3,2,3 3,2,4 3,3,1 3,3,2 3,3,3 3,3,4 3,4,1 3,4,2 3,4,3 3,4,4 4,1,1 4,1,2 4,1,3 4,1,4 4,2,1 4,2,2 4,2,3 4,2,4 4,3,1 4,3,2 4,3,3 4,3,4 4,4,1 4,4,2 4,4,3 4,4,4 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , SP3,1 SP4,1 SPVertex=3, Len=2 SP3,1|2 SP4,1|2 SP1,1 SP2,1 SP1,2 SP2,2 SP1,1|2 SP2,1|2 2 1 0 0 0 1 3 1 1 0 0 1 4 1 1 1 1 0 1 1 0 0 1 1 2 2 1 0 1 0 3 2 0 1 0 0 2 12 1 0 1 1 3 12 1 1 0 1 4 12 1 1 1 0 1 2 0 1 0 0 1 12 0 1 1 1 1,1,1 1,1,2 1,1,3 1,1,4 1,2,1 1,2,2 1,2,3 1,2,4 1,3,1 1,3,2 1,3,3 1,3,4 1,4,1 1,4,2 1,4,3 1,4,4 2,1,1 2,1,2 2,1,3 2,1,4 2,2,1 2,2,2 2,2,3 2,2,4 2,3,1 2,3,2 2,3,3 2,3,4 2,4,1 2,4,2 2,4,3 2,4,4 3,1,1 3,1,2 3,1,3 3,1,4 3,2,1 3,2,2 3,2,3 3,2,4 3,3,1 3,3,2 3,3,3 3,3,4 3,4,1 3,4,2 3,4,3 3,4,4 4,1,1 4,1,2 4,1,3 4,1,4 4,2,1 4,2,2 4,2,3 4,2,4 4,3,1 4,3,2 4,3,3 4,3,4 4,4,1 4,4,2 4,4,3 4,4,4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
TheEdgepTree(E), PathTree(PT), ShortestPathvTree(SPT),AcyclicPathTree(APT) andCycleList(CL) of a graph, G5 PTG5 1 0 1 0 0 1 0 1 0 2 1 0 0 1 0 0 0 0 3 0 0 0 0 0 1 0 1 4 0 1 0 0 0 0 0 0 5 1 0 0 0 0 0 1 0 6 0 0 1 0 0 0 0 1 7 1 0 0 0 1 0 0 0 8 0 0 1 0 0 1 0 0 EG5 2-level str=8 1 0 1 0 0 1 0 1 0 2 1 0 0 1 0 0 0 0 3 0 0 0 0 0 1 0 1 4 0 1 0 0 0 0 0 0 5 1 0 0 0 0 0 1 0 6 0 0 1 0 0 0 0 1 7 1 0 0 0 1 0 0 0 8 0 0 1 0 0 1 0 0 3 6 0 0 0 0 0 0 0 1 1 2 0 0 0 1 0 0 0 0 1 5 0 0 0 0 0 0 1 0 1 7 0 0 0 0 1 0 0 0 2 1 0 0 0 0 1 0 1 0 3 8 0 0 0 0 0 1 0 0 4 2 1 0 0 0 0 0 0 0 5 1 0 1 0 0 0 0 1 0 5 7 1 0 0 0 0 0 0 0 6 3 0 0 0 0 0 0 0 1 6 8 0 0 1 0 0 0 0 0 7 1 0 1 0 0 1 0 0 0 7 5 1 0 0 0 0 0 0 0 8 3 0 0 0 0 0 1 0 0 8 6 0 0 1 0 0 0 0 0 1 5 7 1 0 0 0 0 0 0 0 1 7 5 1 0 0 0 0 0 0 0 2 1 5 0 0 0 0 0 0 1 0 2 1 7 0 0 0 0 1 0 0 0 3 6 8 0 0 1 0 0 0 0 0 3 8 6 0 0 1 0 0 0 0 0 4 2 1 0 0 0 0 1 0 1 0 5 1 2 0 0 0 1 0 0 0 0 5 1 7 0 0 0 0 1 0 0 0 5 7 1 0 0 0 0 1 0 0 0 6 3 8 0 0 0 0 0 1 0 0 6 8 3 0 0 0 0 0 1 0 0 7 1 2 0 0 0 1 0 0 0 0 7 1 5 0 0 0 0 0 0 1 0 8 6 3 0 0 0 0 0 0 0 1 8 3 6 0 0 0 0 0 0 0 1 7 5 1 0 1 0 0 0 0 1 0 4 2 1 5 0 0 0 0 0 0 1 0 4 2 1 7 0 0 0 0 1 0 0 0 7 5 1 2 0 0 0 1 0 0 0 0 1 2 3 8 CLG5 1571 APTG5 1 0 1 0 0 1 0 1 0 2 1 0 0 1 0 0 0 0 3 0 0 0 0 0 1 0 1 4 0 1 0 0 0 0 0 0 5 1 0 0 0 0 0 1 0 6 0 0 1 0 0 0 0 1 7 1 0 0 0 1 0 0 0 8 0 0 1 0 0 1 0 0 1751 4 7 3683 5 6 3863 5175 5715 2 1 0 0 0 0 1 0 1 0 3 6 0 0 0 0 0 0 0 1 3 8 0 0 0 0 0 1 0 0 4 2 1 0 0 0 0 0 0 0 5 1 0 1 0 0 0 0 1 0 5 7 1 0 0 0 0 0 0 0 6 3 0 0 0 0 0 0 0 1 6 8 0 0 1 0 0 0 0 0 7 1 0 1 0 0 1 0 0 0 7 5 1 0 0 0 0 0 0 0 8 3 0 0 0 0 0 1 0 0 8 6 0 0 1 0 0 0 0 0 1 2 0 0 0 1 0 0 0 0 1 5 0 0 0 0 0 0 1 0 1 7 0 0 0 0 1 0 0 0 6386 6836 7157 7517 8368 2 1 5 0 0 0 0 0 0 1 0 2 1 7 0 0 0 0 1 0 0 0 4 2 1 0 0 0 0 1 0 1 0 5 1 2 0 0 0 1 0 0 0 0 7 1 2 0 0 0 1 0 0 0 0 7 5 1 0 1 0 0 0 0 0 0 8638 PT Clique Miner Algorithm A clique is all cycles Extend to a k-plex(k-core) mining algorithm? PT(=APT+CL), SPT are powerful datamining tools with closure properties (to eliminate branches) . SPTG5 1 0 1 0 0 1 0 1 0 2 1 0 0 1 2 0 2 0 2 1 0 0 1 0 0 0 0 3 0 0 0 0 0 1 0 1 4 0 1 0 0 0 0 0 0 4 2 1 0 0 3 0 3 0 5 1 2 0 3 0 0 1 0 5 1 0 0 0 0 0 1 0 6 0 0 1 0 0 0 0 1 7 1 0 0 0 1 0 0 0 7 1 2 0 0 1 0 0 0 7 1 2 0 3 1 0 0 0 8 0 0 1 0 0 1 0 0 1 0 1 0 2 1 0 1 0 5 1 2 0 0 0 0 1 0 4 2 1 0 0 0 0 0 0 Max clique MiningA kCycle is a kCliqueiff it’s found in CLk as PERM(k-1,k-1)/2=(k-1)!/2 kCycles (e.g., vertices are repeated in CL for 3cycles, 2!/2=1; 4cycles, 3!/2=3; 5cycles, 4!/2=12; 6cycles, 5!/2=60. 4 2 1 5 0 0 0 0 0 0 1 0 4 2 1 7 0 0 0 0 1 0 0 0 7 5 1 2 0 0 0 1 0 0 0 0 Downward closure: Once, a 4cycle 12341 is established as a 4clique (by the fact that {1,2,3,4} occurs 3!/2=3 times in CL), all 3vertex subsets are 3cliques {1,2,3},{1,2,4},{1,3,4}, so no need to check further. k-plex (missing k edges) mining alg? k-core (has k edges) mining alg? Density (internal edge density >> external|avg) mining alg? Degree (internal vertex degree >> external|avg) mining alg? DiameterG5 is max{Diameterk} = max{ 2,2,1,3,2,1,3,1}=3. Connected comp containing V1, COMP1={1,2,4,5,7}. Pick 1st vertex not in COMP1,3, COMP3 ={3,6,8}. Done. The partition is { {1,2,4,5,7}, {3,6,8} }. To pick the first vertex not in COMP1, mask off COMP1 with SPTv1’ and then pick the first vertex in this complement.
E=A1Ps 8 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 9 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 4 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 6 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 7 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 SP1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 SP1&2 a e b 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 8 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 3 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 4 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 6 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 7 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 9 d 4 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 b f c g A6Ps A5Ps A4Ps A2Ps cycles in blue (not in APT) A3Ps 1 2 3 4 5 6 7 8 9 a b c d e f g 1 2 3 4 5 6 7 8 9 a b c d e f g 1 2 3 4 5 6 7 8 9 a b c d e f g 1 2 3 4 5 6 7 8 9 a b c d e f g 1 2 3 4 5 6 7 8 9 a b c d e f g 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 SP1&2&3 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 SP2 A c 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 D g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 G f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 b c 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 D f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 F d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 F g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 G d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 4 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 5 7 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 3 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 6 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 7 5 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 7 6 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 8 4 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 9 c 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 a 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 3 0 1 0 0 0 1 0 1 0 0 0 0 0 0 0 0 6 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 SP1&2&3&4 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 SP3 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 5 6 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 5 7 6 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 7 5 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 6 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 8 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 G F d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 D G f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 6 7 5 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 7 5 6 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 7 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 D F g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 F D g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 F G d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 4 3 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 6 5 7 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 G D f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 5 7 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 g 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 b 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 c 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 8 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 8 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 8 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 8 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 a 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 a 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 a 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 f 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 1 0 1 0 0 0 0 0 0 0 0 2 1 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 3 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 3 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 3 1 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 3 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 4 1 1 1 0 0 1 0 1 0 0 0 0 0 0 0 0 4 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 4 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 4 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 5 1 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 5 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 5 1 0 1 1 0 1 1 0 0 0 0 0 0 0 0 0 5 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 6 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 6 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 6 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 6 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 7 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 7 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 7 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 7 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 5 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 6 5 7 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 SP1&2&3&4&5 COMPLETE 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 SP4 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 5 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 6 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 2 4 3 1 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 2 4 3 1 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 5 7 6 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 7 5 6 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 8 4 3 1 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 8 4 3 1 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2 4 3 1 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 4 3 1 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 4 3 1 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 5 6 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 5 7 6 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 7 6 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 7 5 6 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 8 4 3 1 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 2 4 3 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 3 1 6 5 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 3 1 6 7 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 4 3 1 6 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 5 6 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 5 7 6 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 6 1 3 4 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 7 5 6 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 7 6 1 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 8 4 3 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2 1 0 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 SP5 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 SP6 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 5 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 7 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 d 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c d e f g 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 G6
SPBT: Shortest Path BitMap Tree G6 PT1 1 2 3 4 5 6 7 8 9 a b c CycleList 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 2 1 1 0 0 0 0 0 0 0 0 2 1 1 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 1 3 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 1 3 1 1 0 0 0 0 0 0 0 0 0 1 4 0 0 1 0 0 0 0 0 4 1 1 0 0 0 0 1 0 0 0 0 0 4 0 0 1 0 0 0 0 0 4 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 5 1 1 0 0 0 0 0 5 0 0 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 5 1 1 0 0 0 0 0 5 0 0 0 0 0 0 0 6 0 0 0 0 0 0 6 0 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 6 0 0 0 0 0 0 6 1 1 0 0 0 0 6 1 1 0 0 0 0 7 0 0 0 0 0 7 0 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 7 0 0 0 0 0 7 0 0 0 0 0 7 0 0 0 0 0 SP4 1 2 3 4 5 6 7 8 9 a b c SP3 1 2 3 4 5 6 7 8 9 a b c SP 1 2 3 4 5 6 7 8 9 a b c SP1 1 2 3 4 5 6 7 8 9 a b c 9 1 1 1 9 1 1 1 9 0 0 0 0 0 0 0 1 0 1 1 1 8 0 0 0 0 8 1 1 0 0 8 1 1 0 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 a 1 1 a 1 1 b 1 b 0 0 0 0 0 0 0 0 1 1 0 1 b 1 c 0 0 1 0 0 0 0 0 1 1 1 0 1231 1 2 3 4 5 6 7 8 9 a b c 1241 5675 1 SP1 2 3 4 5 6 7 8 9 a b c 2 0 0 0 0 1 0 0 0 0 1 3 1 0 0 0 0 1 1 1 0 4 1 1 0 0 0 0 0 0 5 0 0 1 0 0 0 0 7 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 6 0 0 1 1 0 0 8 0 0 1 1 C 3 1 1 0 0 0 0 0 0 0 0 0 0 A b 0 0 0 0 0 0 0 0 1 0 0 1 B 9 0 0 0 0 0 0 0 1 0 1 0 1 B c 0 0 1 0 0 0 0 0 1 1 0 0 A 9 0 0 0 0 0 0 0 1 0 0 1 1 A c 0 0 1 0 0 0 0 0 1 0 1 0 B a 0 0 0 0 0 0 0 1 1 0 0 1 C 9 0 0 0 0 0 0 0 1 0 1 1 0 3 1 0 1 0 1 0 0 0 0 0 0 0 0 3 2 1 0 0 1 0 0 0 0 0 0 0 0 3 c 0 0 0 0 0 0 0 0 1 1 1 0 6 5 0 0 0 0 0 0 1 0 0 0 0 0 6 7 0 0 0 1 1 0 0 0 0 0 0 0 8 6 0 0 0 0 1 0 1 0 0 0 0 0 A 8 0 0 0 0 0 1 0 0 1 0 0 0 C a 0 0 0 0 0 0 0 1 1 0 1 0 9 b 0 0 0 0 0 0 0 0 0 1 0 1 4 7 0 0 0 0 1 1 0 0 0 0 0 0 5 6 0 0 0 0 0 0 1 1 0 0 0 0 C b 0 0 0 0 0 0 0 0 1 1 0 0 1 2 0 0 1 1 0 0 0 0 0 0 0 0 1 3 0 1 0 0 0 0 0 0 0 0 0 1 1 4 0 1 0 0 0 0 1 0 0 0 0 0 2 3 1 0 0 0 0 0 0 0 0 0 0 1 2 4 1 0 0 0 0 0 1 0 0 0 0 0 8 9 0 0 0 0 0 0 0 0 0 1 1 1 9 c 0 0 1 0 0 0 0 0 0 1 1 0 4 1 0 1 1 0 0 0 0 0 0 0 0 0 4 2 1 0 1 0 0 0 0 0 0 0 0 0 5 7 0 0 0 1 0 1 0 0 0 0 0 0 6 8 0 0 0 0 0 0 0 0 1 1 0 0 7 4 1 1 0 0 0 0 0 0 0 0 0 0 7 5 0 0 0 0 0 1 0 0 0 0 0 0 7 6 0 0 0 0 1 0 0 1 0 0 0 0 8 a 0 0 0 0 0 0 0 0 1 0 1 1 9 8 0 0 0 0 0 1 0 0 0 1 0 0 9 a 0 0 0 0 0 0 0 1 0 0 1 1 PT2 1 2 3 4 5 6 7 8 9 a b c SPT2 SPT3 SPT4 2 3 0 0 0 0 0 0 0 0 0 0 0 1 2 4 0 0 0 0 0 0 1 0 0 0 0 0 3 1 0 0 0 1 0 0 0 0 0 0 0 0 3 c 0 0 0 0 0 0 0 0 1 1 1 0 4 7 0 0 0 0 1 1 0 0 0 0 0 0 5 6 0 0 0 0 0 0 0 1 0 0 0 0 6 8 0 0 0 0 0 0 0 0 1 1 0 0 7 6 0 0 0 0 0 0 0 1 0 0 0 0 8 9 0 0 0 0 0 0 0 0 0 0 1 1 1 4 0 0 0 0 0 0 1 0 0 0 0 0 1 2 3 4 5 6 7 8 9 a b c 1 2 3 4 5 6 7 8 9 a b c 1 2 3 4 5 6 7 8 9 a b c 3 C a 0 0 0 0 0 0 0 1 1 0 1 0 1 2 3 1 0 0 0 0 0 0 0 0 0 0 1 1 2 4 1 0 0 0 0 0 1 0 0 0 0 0 1 3 c 0 0 0 0 0 0 0 0 1 1 1 0 1 4 2 1 0 1 0 0 0 0 0 0 0 0 0 1 4 7 0 0 0 0 1 1 0 0 0 0 0 0 2 4 1 0 1 1 0 0 0 0 0 0 0 0 0 2 4 7 0 0 0 0 1 1 0 0 0 0 0 0 3 1 2 0 0 1 1 0 0 0 0 0 0 0 0 3 1 4 0 1 0 0 0 0 1 0 0 0 0 0 4 1 2 0 0 1 1 0 0 0 0 0 0 0 0 4 1 3 0 1 0 0 0 0 0 0 0 0 0 1 4 2 1 0 0 1 1 0 0 0 0 0 0 0 0 4 2 3 1 0 0 0 0 0 0 0 0 0 0 1 4 7 5 0 0 0 0 0 1 0 0 0 0 0 0 4 7 6 0 0 0 0 1 0 0 1 0 0 0 0 5 6 8 0 0 0 0 0 0 0 0 1 1 0 0 5 7 4 1 1 0 0 0 0 0 0 0 0 0 0 5 7 6 0 0 0 0 1 0 0 1 0 0 0 0 6 5 7 0 0 0 1 0 1 0 0 0 0 0 0 6 7 4 1 1 0 0 0 0 0 0 0 0 0 0 6 7 5 0 0 0 0 0 1 0 0 0 0 0 0 7 4 1 0 1 1 0 0 0 0 0 0 0 0 0 7 4 2 1 0 1 0 0 0 0 0 0 0 0 0 3 C b 0 0 0 0 0 0 0 0 1 1 0 0 5 6 7 0 0 0 1 1 0 0 0 0 0 0 0 6 8 9 0 0 0 0 0 0 0 0 0 1 1 1 7 5 6 0 0 0 0 0 0 1 1 0 0 0 0 7 6 5 0 0 0 0 0 0 1 0 0 0 0 0 1 3 2 1 0 0 1 0 0 0 0 0 0 0 0 2 3 1 0 1 0 1 0 0 0 0 0 0 0 0 6 8 a 0 0 0 0 0 0 0 0 1 0 1 1 3 C 9 0 0 0 0 0 0 0 1 0 1 1 0 2 3 c 0 0 0 0 0 0 0 0 1 1 1 0 7 6 8 0 0 0 0 0 0 0 0 1 1 0 0 2 0 0 1 1 0 0 1 1 1 0 3 0 0 0 1 1 0 0 0 0 3 0 0 0 1 0 0 0 0 0 4 0 0 0 1 0 0 0 1 5 0 0 0 1 1 0 0 6 0 0 0 0 1 1 7 0 1 1 0 0 1 0 0 0 1 1 0 0 1 1 1 0 PT3 1 2 3 4 5 6 7 8 9 a b c … 1 3 c 0 0 0 0 0 0 0 0 1 1 1 0 1 4 7 0 0 0 0 1 1 0 0 0 0 0 0 2 3 c 0 0 0 0 0 0 0 0 1 1 1 0 2 4 7 0 0 0 0 1 1 0 0 0 0 0 0 3 1 4 0 0 0 0 0 0 1 0 0 0 0 0 3 C 9 0 0 0 0 0 0 0 1 0 0 0 0 5 6 8 0 0 0 0 0 0 0 0 1 1 0 0 4 1 3 0 0 0 0 0 0 0 0 0 0 0 1 6 8 9 0 0 0 0 0 0 0 0 0 0 1 1 7 6 8 0 0 0 0 0 0 0 0 1 1 0 0 4 7 6 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 0 1 0 0 0 0 3 0 1 1 0 0 0 0 0 0 4 0 0 0 0 1 1 1 0 5 0 0 0 0 0 1 1 7 0 0 0 1 1 5 0 0 0 0 0 0 0 7 0 0 0 0 0 SPLT: Shortest Path List Tree 1 3 C 9 0 0 0 0 0 0 0 1 0 1 1 0 5 6 8 9 0 0 0 0 0 0 0 0 0 1 1 1 2 3 C 9 0 0 0 0 0 0 0 1 0 1 1 0 3 1 4 7 0 0 0 0 1 1 0 0 0 0 0 0 4 1 3 c 0 0 0 0 0 0 0 0 1 1 1 0 7 6 8 9 0 0 0 0 0 0 0 0 0 1 1 1 1 2 1 3 1 4 2 1 2 3 2 4 3 1 3 2 3 c 4 1 4 2 4 7 5 6 5 7 6 5 6 7 6 8 7 4 7 5 7 6 8 6 8 9 8 a 9 8 9 a 9 b 9 c A 8 A 9 A b A c B 9 B a B c C 3 C 9 C a C b PT4 1 2 3 4 5 6 7 8 9 a b c 1 5 4 2 6 7 3 c 1 3 c 7 4 1 B 9 8 C 3 2 C 9 8 3 c 9 3 c a 3 c b 4 1 3 A C 3 C 3 1 B C 3 A 8 6 1 4 7 2 4 7 4 7 5 6 7 4 6 8 9 7 4 2 7 6 8 8 6 7 8 9 c 9 C 3 2 3 c 3 1 4 4 7 6 5 6 8 5 7 4 6 8 a 8 6 5 8 9 b 9 8 6 9 b 8 a 3 1 4 7 0 0 0 0 1 1 0 0 0 0 0 0 1 3 C 9 0 0 0 0 0 0 0 1 0 0 0 0 2 3 C 9 0 0 0 0 0 0 0 1 0 0 0 0 4 1 3 c 0 0 0 0 0 0 0 0 1 1 1 0 5 6 8 9 0 0 0 0 0 0 0 0 0 0 1 1 7 6 8 9 0 0 0 0 0 0 0 0 0 0 1 1 6 8 9 c 4 1 3 c 7 6 8 9 8 6 7 4 1 3 C 9 1 3 C b 1 4 7 5 1 4 7 6 2 3 C 9 2 3 C a 2 3 C b 3 c 9 8 5 6 8 9 5 7 4 1 5 7 4 2 6 8 9 b 8 9 C 3 9 C 3 1 A C 3 1 2 4 7 6 3 1 4 7 5 6 8 a 6 7 4 1 6 7 4 2 7 4 1 3 7 6 8 a 9 8 6 5 9 8 6 7 9 C 3 2 a 8 6 5 a 8 6 7 A C 3 2 2 4 7 5 4 7 6 8 B 9 8 6 B C 3 1 B C 3 2 C 3 1 4 C 9 8 6 1 1 1 1 3 3 2 4 3 3 3 2 1 1 1 1 3 3 2 0 3 3 3 2 2 1 1 3 3 2 4 3 3 3 2 2 1 1 3 3 2 0 3 3 3 2 3 2 0 0 0 0 2 2 2 1 1 1 1 1 0 0 2 0 0 0 0 2 2 1 1 0 0 2 0 0 0 0 2 3 2 0 0 3 3 2 2 2 1 3 2 0 0 3 0 2 2 2 1 4 2 2 1 0 0 0 0 0 5 1 1 2 0 0 0 0 6 1 1 2 2 0 0 7 2 0 0 0 0 3 2 4 4 3 3 2 2 2 1 5 1 1 2 3 3 4 4 4 2 2 1 3 0 0 0 3 5 1 1 2 3 3 0 0 6 1 1 2 2 3 3 7 2 3 3 0 0 7 2 3 3 4 4 8 1 1 2 2 4 2 2 1 3 4 4 4 3 3 1 4 7 5 6 7 4 1 3 3 1 4 7 6 4 1 3 C 9 4 1 3 C a 4 1 3 C b 5 6 8 9 b 5 6 8 9 c 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 1 3 C 9 a B C 3 1 4 8 6 7 4 1 7 6 8 9 b 7 6 8 9 c 8 6 7 4 1 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5
G6 alternative SPs are listed (e.g., c9867 is another shortest 4path from c to 7 (other than the listed c3147) Since all subpaths of a shortest path are shortest paths, there is redundancy in SPLT. Can we find a data structure that has all the information of SPLT but less redundancy? 1 2 1 3 1 4 2 1 2 3 2 4 3 1 3 2 3 c 4 1 4 2 4 7 5 6 5 7 6 5 6 7 6 8 7 4 7 5 7 6 8 6 8 9 8 a 9 8 9 a 9 b 9 c A 8 A 9 A b A c B 9 B a B c C 3 C 9 C a C b SPLT: Shortest Path List Tree 1 3 c 7 4 1 B 9 8 C 3 2 C 9 8 3 c 9 3 c a 3 c b 4 1 3 A C 3 C 3 1 A 8 6 B C 3 1 4 7 2 3 c 2 4 7 3 1 4 4 7 5 4 7 6 5 6 8 5 7 4 6 7 4 6 8 9 6 8 a 7 4 2 7 6 8 8 6 5 8 6 7 8 9 b 8 9 c 9 8 6 9 C 3 E 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 Those that have children are redundant. Eliminate others redundancies bottom up? 6 8 9 c 4 1 3 c 7 6 8 9 8 6 7 4 1 3 C 9 1 3 C b 1 4 7 5 1 4 7 6 2 3 C 9 2 3 C a 2 3 C b 3 c 9 8 5 6 8 9 5 7 4 1 5 7 4 2 6 8 9 b 8 9 C 3 9 C 3 1 A C 3 1 2 4 7 5 2 4 7 6 3 1 4 7 5 6 8 a 6 7 4 1 6 7 4 2 7 4 1 3 7 6 8 a 9 8 6 5 9 8 6 7 9 C 3 2 a 8 6 5 a 8 6 7 A C 3 2 4 7 6 8 B 9 8 6 B C 3 1 B C 3 2 C 3 1 4 C 9 8 6 Remove reverse ordered redundancies. I claim this contains all Shortest Paths. Next we need to index it. V1 is indexed below 3 1 4 7 5 3 1 4 7 6 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 4 1 3 C b 5 6 8 9 b 5 6 8 9 c 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 b 7 6 8 9 c 8 6 7 4 1 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5 1 2 2 1 3 2 4 2 9 a B a C 3 2 6 8 a 7 4 2 2 3 C a 2 3 C b 5 7 4 2 8 9 C 3 9 C 3 1 A C 3 1 2 4 7 5 2 4 7 6 5 6 8 a 6 7 4 2 7 6 8 a 9 C 3 2 a 8 6 5 A C 3 2 4 7 6 8 B C 3 2 3 1 4 7 5 3 1 4 7 6 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 4 1 3 C b 5 6 8 9 b 5 6 8 9 c 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 b 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5 1 2 3 4 5 6 7 8 9 a b c 1 5 4 2 6 7 3 c 9 b B a 8 1 2 9 a a 2 3 C a 2 3 C b 2 4 7 6 5 6 8 a 7 6 8 a a 8 6 5 2 4 7 5 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5
SPT6=G6 G6 SPLT: Shortest Path List Tree (another possible efficient Shortest Path structure.) b a E 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 5 7 6 4 1 2 3 C a 9 8 5 7 6 8 4 1 2 3 C a 9 8 5 7 6 4 1 2 3 B C a 9 8 4 1 2 3 C a 9 8 1 2 3 C 9 8 5 7 6 4 1 2 3 B C a 9 8 1 1 5 5 4 4 2 2 6 6 7 7 3 3 c c 9 9 b b 8 8 1 2 9 a a a This wasn’t useful since it gives back the original graph. 2 3 C a 2 3 C b 2 4 7 6 5 6 8 a 7 6 8 a a 8 6 5 2 4 7 5 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5
G6 SPLT: Shortest Path List Tree Another possibility is to create an efficient Shortest Path structure consisting of paths (cycles?) B a E 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 2 1 2 3 2 4 1 3 C 9 8 5 6 5 7 8 6 7 4 1 A 9 A c A 8 b c b 9 b a 5 6 7 1 4 2 1 1 5 5 c 3 4 4 2 2 6 6 7 7 9 b 3 3 a c c c 9 9 b b 9 8 8 a a 8 a 1 2 9 a 2 3 C a 2 3 C b 2 4 7 6 5 6 8 a 7 6 8 a a 8 6 5 2 4 7 5 Is this useful? 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5
G6 SPLT: Shortest Path List Tree Let’s try pruning the SP Tree to see what we get: We have bc and c314 Have 47 and c314 B a We have b986 and 65 We have 7689 and 9c E 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 Have a865 We have 8674 and 41 Have 768 and 89c We have a867 and 74 We have 23c and ca Have 768 and 8a We have 247 and 76 We have c98 and 23c We have 574 and 413 We have 413c and c9 1 1 1 1 1 1 1 1 1 1 1 1 5 5 5 5 5 5 5 5 5 5 5 5 1 2 9 a B a 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 3 3 3 3 3 3 3 3 3 3 3 3 c c c c c c c c c c c c 2 3 C b 5 6 8 a 2 4 7 5 9 9 9 9 9 9 9 9 9 9 9 9 b b b b b b b b b b b b 8 8 8 8 8 8 8 8 8 8 8 8 a a a a a a a a a a a a 1 2 9 a 4 1 3 C a 1 3 C 9 8 9 8 6 7 4 B 9 8 6 7 C 9 8 6 5 2 3 C a 2 3 C b 2 4 7 6 5 6 8 a 7 6 8 a a 8 6 5 2 4 7 5 6 7 4 1 3 4 1 3 C 9 4 1 3 C a 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 B C 3 1 4 8 6 7 4 1 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5
G6 Qualifies but we already have it. 1 2 1 3 1 4 2 3 2 4 3 c 4 7 5 6 5 7 6 7 6 8 8 9 8 a 9 a 9 b 9 c A b A c B c Compare SPLTs: Clique Miner: CSkkCliqueSet. CCSkCandidateCSk=alls of CSk-1 pairs w k-2 common vertices. v,w=kth vertices of 2 k-cliques w k-1 common vertices, UNIONCSk+1 iff (PE)(v,w)=1 (CS2) Eliminated reversals 3 c 9 A C 3 B C 3 A 8 6 1 4 7 2 3 c 2 4 7 3 1 4 5 6 8 5 7 4 6 7 4 6 8 9 7 6 8 8 9 b 1 3 c CCS3= 3 2 6 7 6 5 7 4 7 4 4 1 7 5 4 2 3 1 5 6 C 3 1 2 9 b 9 a 2 3 1 2 9 8 8 6 8 6 1 3 8 9 9 a A b C 3 A 8 C 3 A 8 9 8 5 7 9 b 9 c 9 b A c 7 6 8 9 7 6 7 5 8 a 9 c 6 8 C b 8 a 6 8 3 c 3 c C 9 1 4 4 7 A c C a 9 c A b 1 4 4 7 2 4 1 3 4 1 3 c 7 6 8 9 8 6 7 4 1 3 C 9 2 3 C 9 2 3 C a 2 3 C b 2 4 7 6 3 1 4 7 3 c 9 8 5 6 8 9 5 6 8 a 5 7 4 1 6 7 4 1 6 8 9 b 2 4 7 5 7 6 8 a A C 3 1 B C 3 1 C 9 8 6 E 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 4 1 1 0 0 0 0 1 0 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 9 0 0 0 0 0 0 0 1 0 1 1 1 c 0 0 1 0 0 0 0 0 1 1 1 0 8 0 0 0 0 0 1 0 0 1 1 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 68 89 8a 9a 9b 9c ab ac bc CS2= 12 13 14 23 24 3c 47 56 57 67 3 1 4 7 5 4 1 3 C 9 4 1 3 C a 5 6 8 9 b 2 3 C 9 8 1 3 C 9 8 1 3 C 9 a 6 7 4 1 3 7 6 8 9 b 8 6 7 4 1 9 8 6 7 4 B C 3 1 4 a 8 6 7 4 C 3 1 4 7 C 9 8 6 5 CS3= 123 124 567 89a 9ab 9ac 9bc abc 9abc is the only maximal 4Clique (9ab, 9ac, 9bc, abc are non-maximal 3Cliques). 123, 124, 567, 89a are the maximal 3Cliques CCS4 89a b9a= 89ab 89a c9a= 89ac 9ab 9ac= 9abc 123 124= 1234 CS4= A k-plex is a Subgraph missing k edges. k-plex Miner: kpShhVertexkplexSet, h>k. CkpShCandkpSh=alls of kpSh-1 pairs w h-2 common vertices. v,w=kth vertices of 2 k-cliques w k-1 common vertices, UNIONCSk+1 iff (PE)(v,w)=1 (CS2) 1 2 9 a B a Eliminated redundant subpaths and more reversals 2 3 C b 2 3 C a 2 4 7 5 2 4 7 6 5 6 8 a 7 6 8 a SPLT: Full Shortest Path List Tree 1 2 1 3 1 4 2 1 2 3 2 4 3 1 3 2 3 c 4 1 4 2 4 7 5 6 5 7 6 5 6 7 6 8 7 4 7 5 7 6 8 6 8 9 8 a 9 8 9 a 9 b 9 c A 8 A 9 A b A c B 9 B a B c C 3 C 9 C a C b 1 5 4 2 6 7 1 3 C 9 8 2 3 C 9 8 4 1 3 C a 4 1 3 C 9 5 7 4 1 3 5 6 8 9 b 6 7 4 1 3 8 6 7 4 1 9 8 6 7 4 7 6 8 9 b a 8 6 7 4 C 9 8 6 5 C 3 1 4 7 B C 3 1 4 3 c 1 3 c 7 4 1 B 9 8 C 3 2 C 9 8 3 c 9 3 c a 3 c b 4 1 3 A C 3 C 3 1 B C 3 A 8 6 1 4 7 2 4 7 4 7 5 6 7 4 6 8 9 7 4 2 7 6 8 8 6 7 8 9 c 9 C 3 2 3 c 3 1 4 4 7 6 5 6 8 5 7 4 6 8 a 8 6 5 8 9 b 9 8 6 9 b 8 a 1 2 B a 9 a 6 8 9 c 4 1 3 c 7 6 8 9 8 6 7 4 1 3 C 9 1 3 C b 1 4 7 5 1 4 7 6 2 3 C 9 2 3 C a 2 3 C b 3 c 9 8 5 6 8 9 5 7 4 1 5 7 4 2 6 8 9 b 8 9 C 3 9 C 3 1 A C 3 1 2 4 7 6 3 1 4 7 5 6 8 a 6 7 4 1 6 7 4 2 7 4 1 3 7 6 8 a 9 8 6 5 9 8 6 7 9 C 3 2 a 8 6 5 a 8 6 7 A C 3 2 2 4 7 5 4 7 6 8 B 9 8 6 B C 3 1 B C 3 2 C 3 1 4 C 9 8 6 2 3 C b 2 4 7 5 5 6 8 a Eliminated if redundant w concatenated subpaths 3 1 4 7 5 6 7 4 1 3 3 1 4 7 6 4 1 3 C 9 4 1 3 C a 4 1 3 C b 5 6 8 9 b 5 6 8 9 c 5 7 4 1 3 2 3 C 9 8 1 3 C 9 8 1 3 C 9 a B C 3 1 4 8 6 7 4 1 7 6 8 9 b 7 6 8 9 c 9 8 6 7 4 a 8 6 7 4 B 9 8 6 5 B 9 8 6 7 C 3 1 4 7 C 9 8 6 5 4 1 3 C a 1 3 C 9 8 7 6 8 9 b 9 8 6 7 4 C 9 8 6 5
G6 A k-plex is a Subgraph missing k edges. All subgraphs will be induced subgraphs defined by their vertex set. Let subgraph S have j edges (|ES|=j)and |VS|=s vertices, then S is a kplex iff C(s,2) – j = s(s-1)/2-j k If S is a kplex, and S’ adds one vertex, x to S, ( V(S’)=V(S)!{x} ) then S’ a kplex iff (s+1)s/2 – (deg(x,S’)+j) k. This is |ES’| |E{123}| = |PE123| = 3 so 123 is a 0plex(clique) and a 1plex |E{124}| = |PE124| = 3 so 124 is a 0plex (clique) Edges are 1-plexes. If H is an ISG, |VH|=h, |EH|=H, H=h(h-1)/2 then H is a kplex iff H – H k.. If H is a kplex and F is an ISG of H, then F is a kplex (if F is missing an edge than H is missing that edge also, since K inherits all H edges involving its vertices. F cannot be missing more edges than H.) If G isn’t a kplex, F1 an ISG of G with a vertex of least degree removed. If F1 isn’t a kplex, let F2 by an ISG of F1 with a vertex of least degree removed, etc. until we find such an Fj to be a kplex. Remove Fj Repeat until all vertexes removed. c 0 0 0 0 0 0 0 0 0 0 0 0 USP2 1 2 3 4 5 6 7 8 9 a b c USP3 1 2 3 4 5 6 7 8 9 a b c USP4 1 2 3 4 5 6 7 8 9 a b c USP1 1 2 3 4 5 6 7 8 9 a b c SP4 1 2 3 4 5 6 7 8 9 a b c SP1 1 2 3 4 5 6 7 8 9 a b c SP2 1 2 3 4 5 6 7 8 9 a b c SP3 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 3 2 0 0 1 1 0 0 0 0 0 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 1 3 4 0 0 0 0 0 0 1 0 0 0 0 0 3 5 0 0 0 0 0 1 1 0 0 0 0 0 2 6 0 0 0 0 0 0 1 1 0 0 0 0 2 7 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 0 0 0 0 0 0 0 0 3 1 0 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 0 0 1 0 0 0 0 1 2 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 1 1 0 0 1 1 1 0 2 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 1 1 0 0 1 1 1 0 2 1 0 1 1 0 0 0 0 0 0 0 0 3 2 0 0 0 0 0 0 1 0 0 0 0 1 3 0 0 0 0 0 0 1 1 0 0 0 0 3 0 0 0 0 1 1 0 0 0 0 0 0 3 0 0 0 1 0 0 0 0 1 1 1 0 3 0 0 0 0 0 0 1 1 0 0 0 0 3 0 0 0 1 0 0 0 0 1 1 1 0 3 0 0 0 0 1 1 0 0 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 3 4 0 0 0 0 0 0 0 1 0 0 0 1 4 0 0 0 0 0 0 0 0 1 1 1 0 4 0 0 1 0 1 1 0 0 0 0 0 0 4 1 1 0 0 0 0 1 0 0 0 0 0 3 4 0 0 0 0 1 1 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 1 1 1 0 4 0 0 0 0 0 0 0 1 0 0 0 1 5 0 0 1 0 0 0 0 0 0 0 1 1 5 0 0 0 0 0 0 0 0 1 1 0 0 5 0 0 0 0 0 0 0 0 0 0 1 1 5 0 0 0 0 0 1 1 0 0 0 0 0 2 5 1 1 0 0 0 0 0 0 1 1 0 0 5 0 0 0 0 0 0 0 1 0 0 0 0 5 0 0 0 1 0 0 0 1 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 1 1 6 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 1 0 1 1 0 0 0 0 3 6 0 0 0 0 0 0 0 0 1 1 0 0 6 0 0 0 1 0 0 0 0 1 1 0 0 6 1 1 0 0 0 0 0 0 0 0 1 1 6 0 0 1 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 1 0 0 0 0 7 1 1 0 0 0 0 0 1 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 1 1 7 0 0 0 0 0 0 0 0 1 1 0 0 7 0 0 1 0 0 0 0 0 1 1 0 0 7 0 0 0 0 0 0 0 0 0 0 1 1 7 0 0 0 1 1 1 0 0 0 0 0 0 3 b 0 0 0 0 0 0 0 0 0 0 0 1 1 b 0 0 0 0 0 0 0 0 0 0 0 0 b 0 0 1 0 0 0 0 1 0 0 0 0 b 0 0 0 1 1 0 1 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 3 b 0 0 0 0 0 0 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 0 0 0 0 b 1 1 0 0 0 1 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 1 3 c 0 0 0 0 0 0 0 0 0 0 0 0 0 9 1 1 0 0 1 0 1 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 9 0 0 0 1 0 0 0 0 0 0 0 0 9 0 0 1 0 0 1 0 0 0 0 0 0 9 0 0 0 0 0 0 0 1 0 1 1 1 4 c 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 0 0 0 0 0 0 0 0 0 0 c 0 0 1 0 0 0 0 0 1 1 1 0 4 c 1 1 0 0 0 0 0 1 0 0 0 0 c 0 0 0 0 1 0 1 0 0 0 0 0 c 0 0 0 1 0 1 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 1 1 0 0 2 a 0 0 0 0 0 0 0 0 0 0 1 1 2 8 0 0 0 0 0 0 0 0 0 0 1 1 8 0 0 0 0 0 0 0 0 0 0 0 0 8 1 1 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 1 0 0 1 1 0 0 3 8 0 0 0 0 1 0 1 0 0 0 1 1 8 0 0 1 1 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 a 0 0 1 0 0 1 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 a 1 1 0 0 1 0 1 0 0 0 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 4 a 0 0 0 1 0 0 0 0 0 0 0 0 a 0 0 0 0 0 0 0 0 0 0 0 0 G=12*11/2=66. G=19 G is a kplex for k 47. H1=ISG{12346789abc} (deg5=2). H1=11*10/2=55, H1=17. H1 is a kplex for k 37. H2=ISG{1234789abc} (deg6=2). H2=10*9/2=45, H2=15. H2 is a kplex for k 30. H3=ISG{123489abc} (deg7=1). H3=9*8/2=36, H3=14. H3 is a kplex for k 22. H4=ISG{12389abc} (deg4=2). H4=8*7/2=28, H4=12. H4 is a kplex for k 16. H5=ISG{1239abc} (deg8=2). H5=7*6/2=21, H5=10. H5 is a kplex for k 11. H6=ISG{239abc} (deg1=2). H6=6*5/2=15, H6=8. H6 is a kplex for k 7. H7=ISG{39abc} (deg2=1). H7=5*4/2=10, H7=7. H7 is a kplex for k 3. H8=ISG{9abc} (deg3=1). H8=4*3/2=6, H8=6. H8 is a kplex for k 0. So take out {9abc} and start over. G={12345678} G=8*7/2=28. G=10 G is a kplex for k 18. deg=33322331 H1=ISG{1234567} (deg8=1). H1=7*6/2=21, H1=9. H1 is a kplex for k 12. deg=2223223 H2=ISG{234567} (deg1=2). H2=6*5/2=15, H2=6. H2 is a kplex for k 9. deg=112223 H3=ISG{34567} (deg2=1). H3=5*4/2=10, H3=4. H3 is a kplex for k 6. deg=01222 H4=ISG{4567} (deg3=0). H4=4*3/2=6, H4=4. H4 is a kplex for k 2. deg=1222 H5=ISG{567} (deg4=1). H5=3*2/2=3, H5=3. H5 is a kplex for k 0. deg=222 So take out {567} and start over. 1 5 G={12348} G=5*4/2=10. G=5 G is a kplex for k 5. deg=33220 4 2 6 7 3 H1=ISG{1234} (deg8=0). H1=4*3/2=6, H1=5. H1 is a kplex for k 1. deg=3322 c 9 b H2=ISG{124} (deg3=2). H2=3*2/2=3, H2=3. H2 is a kplex for k 0. deg=222 8 a This last round is exactly what we want to happen! 1234 was determined to be a 1plex (missing only 1 edge) and 124 was determined to be a clique (0plex – missing no edges). It would have been great if, somehow, 123 had revealed itself as a clique also. It’d’ve been great if 89abc had been detected as a 1plex before 9abc was detected as a clique. How might we make progress in these directions? Try returning to remove all degree ties before moving on? We will try that on the next slide? Note that we aren’t using SP2..SP4, USP1..USP4.
k-plex=Subgraph missing k edges. If H a kplex and F ISG of H, then F is a kplex If H is an ISG, |VH|=h, |EH|=H, H=h(h-1)/2 then H is a kplex iff H – H k. If F is missing an edge, H is missing that edge too (K inherits all H edges). F can’t be missing more edges than H. k-core=Subgraph containing k edges. If F is a kcore and F is a ISG of H then H is a kcore G6 H0=G={123456789abc} H0=12*11/2=66. H0=19 H0 is a kplex for k 47 deg=333323334434 is a kcore for k19 In addition to mining all kplexes and kcores one might want the kplex and/or kcore structure around a particular vertex. For that might use SP1, SP2…. E.g., find the kplex and kcore structure around v=1: H1=ISG{12346789abc} (deg5=2). H1=11*10/2=55, H1=17. H1 is a kplex for k 37. deg= 33332234434 is a kcore for k17 H26=ISG{1234789abc} (deg6=2). H26=10*9/2=45, H26=15 H26 is a kplex for k 30. deg= 3333124434 is a kcore for k15 H27=ISG{1234689abc} (deg7=2). H27=10*9/2=45 H27=15 H27 is a kplex for k 30. deg= 3332134434 is a kcore for k15 (H26 and H27 specify removal of 7 and 6 resp. Thus remove both) SP4 1 2 3 4 5 6 7 8 9 a b c SP1 1 2 3 4 5 6 7 8 9 a b c SP2 1 2 3 4 5 6 7 8 9 a b c SP3 1 2 3 4 5 6 7 8 9 a b c 1 0 1 1 1 0 0 0 0 0 0 0 0 3 1 0 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 2 0 0 0 0 1 1 0 0 1 1 1 0 2 0 0 0 0 0 0 1 0 0 0 0 1 2 1 0 1 1 0 0 0 0 0 0 0 0 3 2 0 0 0 0 0 0 0 1 0 0 0 0 3 1 1 0 0 0 0 0 0 0 0 0 1 3 3 0 0 0 1 0 0 0 0 1 1 1 0 3 0 0 0 0 1 1 0 0 0 0 0 0 3 0 0 0 0 0 0 1 1 0 0 0 0 4 0 0 0 0 0 0 0 0 1 1 1 0 4 1 1 0 0 0 0 1 0 0 0 0 0 3 4 0 0 1 0 1 1 0 0 0 0 0 0 4 0 0 0 0 0 0 0 1 0 0 0 1 5 1 1 0 0 0 0 0 0 1 1 0 0 5 0 0 1 0 0 0 0 0 0 0 1 1 5 0 0 0 1 0 0 0 1 0 0 0 0 5 0 0 0 0 0 1 1 0 0 0 0 0 2 6 0 0 0 0 1 0 1 1 0 0 0 0 3 6 1 1 0 0 0 0 0 0 0 0 1 1 6 0 0 0 1 0 0 0 0 1 1 0 0 6 0 0 1 0 0 0 0 0 0 0 0 0 7 0 0 0 1 1 1 0 0 0 0 0 0 3 7 0 0 1 0 0 0 0 0 1 1 0 0 7 1 1 0 0 0 0 0 1 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 1 1 b 0 0 1 0 0 0 0 1 0 0 0 0 b 1 1 0 0 0 1 0 0 0 0 0 0 b 0 0 0 0 0 0 0 0 1 1 0 1 3 b 0 0 0 1 1 0 1 0 0 0 0 0 9 1 1 0 0 1 0 1 0 0 0 0 0 9 0 0 0 1 0 0 0 0 0 0 0 0 9 0 0 1 0 0 1 0 0 0 0 0 0 9 0 0 0 0 0 0 0 1 0 1 1 1 4 c 0 0 0 0 1 0 1 0 0 0 0 0 c 0 0 0 1 0 1 0 0 0 0 0 0 c 1 1 0 0 0 0 0 1 0 0 0 0 c 0 0 1 0 0 0 0 0 1 1 1 0 4 8 0 0 1 1 0 0 0 0 0 0 0 0 8 1 1 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 1 0 1 0 0 0 1 1 8 0 0 0 0 0 1 0 0 1 1 0 0 3 a 1 1 0 0 1 0 1 0 0 0 0 0 a 0 0 0 0 0 0 0 1 1 0 1 1 4 a 0 0 0 1 0 0 0 0 0 0 0 0 a 0 0 1 0 0 1 0 0 0 0 0 0 SPL1(1)=234 SPL2(1)=7c SPL3(1)=569abc SPL4(1)=8 So to check 1234 kplex/core status, check if there are edges, 23 24 34 (y,y,n). Thus, 123, 124 are 0plexes and 3cores. 134, 234 are 1plexes and 2cores. 1234 is a 1plex and a 5core. H2=ISG{123489abc} (deg7=2). H2=9*8/2=36 H2=14 H2 is a kplex for k 22. deg= 333224434 is a kcore for k14 H34=ISG{12389abc} (deg7=2). H34=8*7/2=28 H34=12 H34 is a kplex for k 16. deg= 22324434 is a kcore for k12 H38=ISG{12349abc} (deg7=2). H38=8*7/2=28 H38=13 H38 is a kplex for k 15. deg= 33324434 is a kcore for k13 H348=ISG{1239abc} (deg7=2). H348=7*6/2=21 H384=10 H384 is a kplex for k 11. deg= 2233334 is a kcore for k10 H341=ISG{2389abc} (deg7=2). H341=7*6/2=21 H341=10 H341 is a kplex for k 11. deg= 1224434 is a kcore for k10 H342=ISG{1389abc} (deg7=2). H342=7*6/2=21 H342=10 H342 is a kplex for k 11. deg= 1224434 is a kcore for k10 (H341,H342,H38 specify removal of 1,2. Thus remove both) H4=ISG{389abc} (deg7=2). H4=6*5/2=15 H4=9 H4 is a kplex for k 6. deg= 124434 is a kcore for k9 To check 12347c kplex/core status, check for edges 17 1c 27 2c 37 3c 47 4c 7c (n n n n n y y n n). Thus, 12347c is a (Combo(6,2)-7)plex =8plex and a 7core. H5=ISG{89abc} (deg7=2). H5=5*4/2=10 H5=8 H5 is a kplex for k 2. deg= 24433 is a kcore for k8 H6=ISG{9abc} (deg7=2). H6=4*3/2=6 H6=6 H6 is a kplex for k 0. deg= 3333 24433 is a kcore for k6 This is what we want. 89abc a 2plex;9abc a 0plex H0=G={1234567} H=21 H=9 H is a kplex for k 11. deg=332322324433 is a kcore for k9 H03=G={124567} H=15 H=8 H is a kplex for k 7. deg=33322324433 is a kcore for k8 H05=G={123467} H=15 H=8 H is a kplex for k 7. deg=33232324433 is a kcore for k8 H06=G={123457} H=15 H=8 H is a kplex for k 7. deg=33232324433 is a kcore for k8 1 5 H035=G={12467} H=10 H=8 H is a kplex for k 7. deg= 2231224433 is a kcore for k8 4 2 6 7 3 H036=G={12457} H=10 H=8 H is a kplex for k 7. deg= 2232224433 is a kcore for k8 c 9 b H0356=G={1247} H=6 H=4 H is a kplex for k 2. deg= 223124433 is a kcore for k4 8 a H03567=G={124} H=3 H=3 H is a kplex for k 0. deg= 22224433 is a kcore for k3 This is what we want. Remove 12489abc H7={3567} H7=6. H7=3H7 is a kplex for k 3. deg=022224433 is a kcore for k3 H7={567} H7=3. H7=3 H7 is a kplex for k 0. deg=222 24433 is a kcore for k3
SG Clique Mining K=2: 2Cliques (2 vertices): 12 13 14 1623 24 34 56 67Find endptsof each edges (Int((n-1)/7)+1, Mod(n-1,7) +1) key 1,1 1,2 1,3 1,4 1,5 1,6 1,7 2,1 2,2 2,3 2,4 2,5 2,6 2,7 3,1 3,2 3,3 3,4 3,5 3,6 3,7 4,1 4,2 4,3 4,4 4,5 4,6 4,7 5,1 5,2 5,3 5,4 5,5 5,6 5,7 6,1 6,2 6,3 6,4 6,5 6,6 6,7 7,1 7,2 7,3 7,4 7,5 7,6 7,7 PE 0 1 1 1 0 1 0 1 0 1 1 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 0 key 1,1 1,2 1,3 1,4 1,5 1,6 1,7 2,1 2,2 2,3 2,4 2,5 2,6 2,7 3,1 3,2 3,3 3,4 3,5 3,6 3,7 4,1 4,2 4,3 4,4 4,5 4,6 4,7 5,1 5,2 5,3 5,4 5,5 5,6 5,7 6,1 6,2 6,3 6,4 6,5 6,6 6,7 7,1 7,2 7,3 7,4 7,5 7,6 7,7 E 0 1 1 1 0 1 0 1 0 1 1 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 1 1 0 EU 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 C 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CU 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 20 1 2 3 4 5 6 7 8 9 30 1 2 3 4 5 6 7 8 9 40 1 2 3 4 5 6 7 8 9 k=3: 123 124 134 234 k=4: 1234 (123 124 234 are cliques) 123,1341234. 123.2341234. 124,1341234. 124, 2341234. 134,2341234. 1234 only 4-clique Using the EdgeCountthm: on C={1,2,3,4}, CU=C&EU C is a clique since ct(CU)=comb(4, 2)=4!/2!2!=6 k=2: E=12 13 14 16 23 2434 56 57 67. k=3: 123 124 134 234 567 8 EC, requires counting 1’s in mask pTree of each Subgraph (or candidate Clique, if take the time to generate the CCSs – but then clearly the fastest way to finish up is simply to lookup the single bit position in E, i.e., use EC). EdgeCount Algorithm (EC): |PUC| = (k+1)!/(k-1)!2! then CCCS The SG alg only needs Edge Mask pTree, E, and a fast way to find those pairs of subgraphs in CSk that share k-1 vertices (then check E to see if the two different kth vertices are an edge in G. Again this is a standard part of the Apriori ARM algorithm and has therefore been optimized and engineered ad infinitum!) PE(4,8)=1 2348CS4 PE(3,8)=1 1348CS4 PE(4,8)=1 1248CS4 PE(2,6)=0 PE(2,6)=0 6 G3 6 G4 key 1,1 1,2 1,3 1,4 1,5 1,6 1,7 1,8 2,1 2,2 2,3 2,4 2,5 2,6 2,7 2,8 3,1 3,2 3,3 3,4 3,5 3,6 3,7 3,8 4,1 4,2 4,3 4,4 4,5 4,6 4,7 4,8 5,1 5,2 5,3 5,4 5,5 5,6 5,7 5,8 6,1 6,2 6,3 6,4 6,5 6,6 6,7 6,8 7,1 7,2 7,3 7,4 7,5 7,6 7,7 7,8 8.1 8,2 8,3 8,4 8,5 8,6 8,7 8.8 E 0 1 1 1 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 6 G2 have PE(2,4)=1 1234CS4 PE(6,7)=1 567CS3 PE(6,7)=1 567CS3 PE(2,4)=1 124CS3 5 5 5 k=4: 1234 1238 1248 1348 2348 k=2: 12 13 14 16 23 2434 56 57 67 18 28 38 48. 7 7 7 PE(2,4)=1 124CS3 PE(1,5)=0 PE(1,5)=0 PE(2,3)=1 123CS3 PE(2,4)=1 1234CS4 PE(4,8)=1 148CS3 PE(2,3)=1 So 123CS3 already have 567 PE(1,7)=0 have PE(1,7)=0 PE(6,8)=0 have Have PE(3,8)=1 238CS3 k=5: 12348 = CS5. PE(2,8)=1 128CS3 PE(3,8)=1 138CS3 2 2 2 1 1 1 PE(2,3)=1 234CS3 PE(3,8)=1 1238CS4 PE(4,8)=1 248CS3 PE(4,8)=1 348CS3 PE(2,3)=1 234CS3 Have 123CS3 have have 124CS3 Have Have 1234 PE(1,4)=1 134CS3 PE(1,4)=1 134CS3 PE(4,8)=1 12348CS5 Have 4 3 4 4 3 3 k=3: 123 124 134 234 567 128 138 148 238 248 348
APPENDIX As a V2 Rolodex card 1:2 2:3 3:2 4:3 2 2:3 12 1 Ekey V1 V2 ELabel 1,3 1 | 3 1 1,4 1 | 4 2 2,4 2 | 4 3 3,4 3 | 4 1 V1 Always use pop-count for 1-counts as we AND, then C is a clique iff all C level-1 counts are |VC|-1. In fact one can mine out all cliques by just analyzing the PT counts. G1 Note: If one creates PT, lots of tasks become easy! E.g., clique mining, shortest path mining, degree community mining, density community mining! What else? E=Adj matrix 1:2 C 1 2 3 2:3 A k-plex is a maximal subgraph in which each vertex is adjacent to all other vertices of the subgraph except at most k of them. A k-core is a maximal subgraph in which each vertex is adjacent to at least k other vertices of the subgraph. In any graph there is a whole hierarchy of cores of different order. 1 3:2 3 3:2 4:3 4 1 4:3 2 3 1 Recommenders: # edges = 1MB (1015) Clique=community s.t. edge between each vertex pair. Community=subgraph w more edges inside than linked to its outside. Gene-Gene Ints: # edges = 1B (109) Person-Tweet Security: # edges = 7B*10K= 1014 Stock-Price: # edges = 1013 Friends Social: # edges = 4BB (1018) An Induced SubGraph (ISG) C, is a subgraph that inherits all of G’s edges on its own vertices. A k-ISG (k vertices), C, is a k-clique iff all of its (k-1)-Sub-ISGs are (k-1)-cliques. k-plex existence alg (using the GPpT): C is a k-plex iff vC|Cv| |VC|2–k2 k-plex inheritance thm: Every induced subgraph of a k-plex is a k-plex. Mine all max k-plexes: Use |Cv| vC Mine all max k-cores: Use |Cv| vC k-core inheritance thm:If a cover of G by induced k-cores, G is a k-core. k-core existence alg (using the GPpT): C is a k-core iff vC,|VC| k. (C=Induced SubGraph with VC={1,3,4}) PU 0 0 1 1_ 0 0 0 1_ 0 0 0 1_ 0 0 0 0 Bit offset 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Ekey 1,1 1,2 1,3 1,4_ 2,1 2,2 2,3 2,4_ 3,1 3,2 3,3 3,4_ 4,1 4,2 4,3 4,4 PE 0 0 1 1_ 0 0 0 1_ 1 0 0 1_ 1 1 1 0 EL 0 0 1 2_ 0 0 0 3_ 0 0 0 1_ 2 3 1 0 PEL.,1 0 0 0 1_ 0 0 0 1_ 0 0 0 1_ 1 1 0 0 PEL.,0 0 0 1 0_ 0 0 0 1_ 1 0 0 0_ 0 1 1 0 P1 1 1 1 1_ 0 0 0 0_ 0 0 0 0_ 0 0 0 0 P2 0 0 0 0_ 1 1 1 1_ 0 0 0 0_ 0 0 0 0 P4 0 0 0 0_ 0 0 0 0_ 0 0 0 0_ 1 1 1 1 PEC=PE&PC 0 0 1 1_ 0 0 0 0_ 1 0 0 1_ 1 0 1 0 PUC=PU&PC 0 0 1 1_ 0 0 0 0_ 0 0 0 1_ 0 0 0 0 P3 0 0 0 0_ 0 0 0 0_ 1 1 1 1_ 0 0 0 0 PUC 0 0 1 1_ 0 0 0 0_ 0 0 0 1_ 0 0 0 0 Ct=3 PUD 0 0 1 0_ 0 0 0 0_ 0 0 0 0_ 0 0 0 0 Ct=1 PUF 0 0 0 1_ 0 0 0 1_ 0 0 0 0_ 0 0 0 0 Ct=2 PUH 0 0 0 0_ 0 0 0 1_ 0 0 0 1_ 0 0 0 0 Ct=2 V (vertex tbl) Vkey VL 1 2 2 3 3 2 4 3 PVL,1 1 1 1 1 PVL,0 0 1 0 1 PC 1 0 1 1 Already have 134 δintD - δintC- δintF - δintH - δextC=1–1/3=2/3 δextH=2/3-2/3=0 δextF=2/3-2/3=0 δextD=1/3–1=-2/3 kCint PE(3,4) = PE(4*[3-1]+4=12)=1 134CS3 PE(1,2) = PE(4*[1-1]+2=2)=0 Clique Existence Alg is induced SG a clique.Edge Count existence thm (EC): |EC||PUC|=COMB(|VC|,2)|VC|!/((|VC|-2)!2!) C only 3-Clique. Apply EC 3vertex ISGs (3-Clique iff |PU|= 3!/(2!1!)=3) VC={1,3,4} VH={2,3,4} VD={1,2,3} VF={1,2,4} SubGraph existence theorem (SG): (VC,EC) is a k-clique iff every induced k-1 subgraph, (VD,ED) is a (k-1)-clique. SG or EC better? Extend to quasi-cliques? Extend to mine out all cliques? PE(2,3)=PE(4*[2-1]+3=7)=0 A Clique Mining algorithm finds all cliques in a graph. For Clique-Mining we can use an ARM-Apriori-like downward closure property: CSkkCliqueSet, CCSk+1Candidatek+1CliqueSet By the SG clique thm, CCSk+1= all s of CSk pairs having k-1 common vertices. Let CCCSk+1 be a union of two k-cliques with k-1 common vertices. Let v and w be the kth vertices (different) of the two k-cliques, then CCSk+1 iff (PE)(v,w)=1. (We just need to check a single bit in PE.) Total degree of C, kC= +kCext Form CCSk+1: Union CSk pairs sharing k-1 vertices, check single PE bit. Below, k=2, so we check edge pairs sharing 1 vertex, then check the 1 new edge bit in PE. kvext The only expensive part of this is forming CCSk. And that is expensive only for CCS3 (as in Apriori ARM) kvint Internal degree of C, kCint =vC External degree of C, kCext =vC CS2=E={13 14 24 34} Next? List out CS3 = {134} form CCS4 = . Done. 6=kCint 2=|PC&PE&Pv1|=kv1int 2=|PC&PE&Pv3| =kv3int 2=|PC&PE&Pv4|=kv4int kC=7 Int/Ext degree of v∈C, kvint/wxt=# edges v to wC/C’ 1=kCext 0=|P’C&PE&Pv3|=kv3ext 0=|P’C&PE&Pv1|=kv1ext 1=|P’C&PE&Pv4|=kv4ext Intra-cluster density δint(C)=|edges(C,C)|/(nc(nc−1)/2)=|PE&PC&PLT|/(3*2/2)=3/3=1 Inter-cluster density δext(C)=|edges(C,C’)| / (nc(n-nc)) =|PE&P’C&PLT|=1/(3*1)=1/3 Tradeoff between large δint(C) and small δext(C) is goal of many community mining algorithms. A simple approach is to Maximize differences. Density Difference algorithm for Communities: δint(C)−δext(C) >Threshold? Degree Differencealgorithm: kCint – kCext> Threshold? Easy to compute w pTrees, even for Big Graphs. Graphs are ubiquitous for complex data in all of science. Ignoring Subgraphs of 2 vertices, the four 3-vertex subgraphs are: C={1,3,4}, D={1,2,3}, F={1,2,4}, H={2,3,4} δint(D) =|PE&PD&PLT|/(3*2/2)=1/3 δext(D)=|PE&P’D&PLT|=1/(3*1)=3/3=1 D δext(H)=|PE&P’H&PLT|=1/(3*1)=2/3 δint(H) =|PE&PH&PLT|/(3*2/2)=2/3 δint(F) =|PE&PF&PLT|/(3*2/2)=2/3 δext(F)=|PE&P’F&PLT|=1/(3*1)=2/3 H F
SubGraph Path pTrees As a V2 Rolodex card E1 0 0 1 1 C1 0 0 1 1 E2 0 0 0 1 E3 1 0 0 1 C3 1 0 0 1 E4 1 1 1 0 C4 1 0 1 0 1:2 2:3 3:2 4:3 E1 2:3 2 1 0 1 1 1 0 1 1 &1= 0 1 1 12 1 Ekey V1 V2 ELabel 1,3 1 | 3 1 1,4 1 | 4 2 2,4 2 | 4 3 3,4 3 | 4 1 V1 E=Adj matrix E2 1:2 13 0 0 0 1 13 0 0 0 1 14 0 1 1 0 14 0 0 1 0 24 1 0 1 0 31 0 0 0 1 31 0 0 0 1 34 1 1 0 0 34 1 0 0 0 41 0 0 1 0 41 0 0 1 0 43 1 0 0 0 43 1 0 0 0 42 0 0 0 0 42 0 0 0 0 C 1 1 0 1 1 1 0 1 1 2 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 3 2:3 G1 C in orange PC= 1 E3 3:2 241 0 0 1 0 3 3:2 243 1 0 0 0 4 4:3 1 143 1 0 0 0 143 1 0 0 0 342 0 0 0 0 342 0 0 0 0 314 0 1 1 0 314 0 0 1 0 134 1 1 0 0 134 1 0 0 0 142 0 0 0 0 142 0 0 0 0 341 0 0 1 0 341 0 0 1 0 413 0 0 0 1 413 0 0 0 1 431 0 0 0 1 431 0 0 0 1 1 0 1 1 4:3 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 2 3 1 To get the C Path pTree, remove all C’ pTrees. & each G pTree with PC. Kill the 2nd bit (or keep vertex2 having no incident edges (then all pTrees are the same depth and can operate on each other. Diameter of C? Cdiamk is the max of the min path lengths from k to the other Cvertices. For each k, proceed down from Ck a level at a time and record the first occurrence of kh , hk. DiamC= maxkV(Diamk) = 1 CDiam1=max{fo13 fo14}=max{11}=1 Diam3=max{fo31 fo34}=max{11}=1 Diam4=max{fo41 fo43}=max{11}=1 Always use pop-count for 1-counts as we AND, then C is a clique iff all C level-1 counts are |VC|-1. In fact one can mine out all cliques by just analyzing the G level=1 counts. Note: If one creates the G Path pTree, lots of tasks become easy! E.g., clique mining, shortest path mining, degree community mining, density community mining! What else? A k-plex is a maximal subgraph in which each vertex is adjacent to all other vertices of the subgraph except at most k of them. A k-core is a maximal subgraph in which each vertex is adjacent to at least k other vertices of the subgraph. In any graph there is a whole hierarchy of cores of different order. k-plex existence alg (using the GPpT): C is a k-plex iff vC|Cv| |VC|2–k2 k-plex inheritance thm: Every induced subgraph of a k-plex is a k-plex. Mine all max k-plexes: Use |Cv| vC Mine all max k-cores: Use |Cv| vC k-core inheritance thm:If a cover of G by induced k-cores, G is a k-core. k-core existence alg (using the GPpT): C is a k-core iff vC,|VC| k. Clique=community s.t. edge between each vertex pair. Recommenders: # edges = 1MB (1015) Community=subgraph w more edges inside than linked to its outside. Person-Tweet Security: # edges = 7B*10K= 1014 Gene-Gene Ints: # edges = 1B (109) Stock-Price: # edges = 1013 Friends Social: # edges = 4BB (1018) An Induced SubGraph (ISG) C, is a subgraph that inherits all of G’s edges on its own vertices. A k-ISG (k vertices), C, is a k-clique iff all of its (k-1)-Sub-ISGs are (k-1)-cliques. (C=Induced SubGraph with VC={1,3,4}) PU 0 0 1 1_ 0 0 0 1_ 0 0 0 1_ 0 0 0 0 Bit offset 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Ekey 1,1 1,2 1,3 1,4_ 2,1 2,2 2,3 2,4_ 3,1 3,2 3,3 3,4_ 4,1 4,2 4,3 4,4 PE 0 0 1 1_ 0 0 0 1_ 1 0 0 1_ 1 1 1 0 EL 0 0 1 2_ 0 0 0 3_ 0 0 0 1_ 2 3 1 0 PEL.,1 0 0 0 1_ 0 0 0 1_ 0 0 0 1_ 1 1 0 0 PEL.,0 0 0 1 0_ 0 0 0 1_ 1 0 0 0_ 0 1 1 0 P1 1 1 1 1_ 0 0 0 0_ 0 0 0 0_ 0 0 0 0 P2 0 0 0 0_ 1 1 1 1_ 0 0 0 0_ 0 0 0 0 P4 0 0 0 0_ 0 0 0 0_ 0 0 0 0_ 1 1 1 1 PEC=PE&PC 0 0 1 1_ 0 0 0 0_ 1 0 0 1_ 1 0 1 0 PUC=PU&PC 0 0 1 1_ 0 0 0 0_ 0 0 0 1_ 0 0 0 0 P3 0 0 0 0_ 0 0 0 0_ 1 1 1 1_ 0 0 0 0 PUC 0 0 1 1_ 0 0 0 0_ 0 0 0 1_ 0 0 0 0 Ct=3 PUD 0 0 1 0_ 0 0 0 0_ 0 0 0 0_ 0 0 0 0 Ct=1 PUF 0 0 0 1_ 0 0 0 1_ 0 0 0 0_ 0 0 0 0 Ct=2 PUH 0 0 0 0_ 0 0 0 1_ 0 0 0 1_ 0 0 0 0 Ct=2 V (vertex tbl) Vkey VL 1 2 2 3 3 2 4 3 Already have 134 δintF - δintD - δintH - δintC- δextC=1–1/3=2/3 δextH=2/3-2/3=0 δextF=2/3-2/3=0 δextD=1/3–1=-2/3 PVL,1 1 1 1 1 kCint PVL,0 0 1 0 1 PC 1 0 1 1 PE(3,4) = PE(4*[3-1]+4=12)=1 134CS3 PE(1,2) = PE(4*[1-1]+2=2)=0 Clique Existence Alg is induced SG a clique.Edge Count existence thm (EC): |EC||PUC|=COMB(|VC|,2)|VC|!/((|VC|-2)!2!) C only 3-Clique. VC={1,3,4} VH={2,3,4} Apply EC 3vertex ISGs (3-Clique iff |PU|= 3!/(2!1!)=3) VD={1,2,3} VF={1,2,4} SubGraph existence theorem (SG): (VC,EC) is a k-clique iff every induced k-1 subgraph, (VD,ED) is a (k-1)-clique. SG or EC better? Extend to quasi-cliques? Extend to mine out all cliques? PE(2,3)=PE(4*[2-1]+3=7)=0 A Clique Mining algorithm finds all cliques in a graph. For Clique-Mining we can use an ARM-Apriori-like downward closure property: CSkkCliqueSet, CCSk+1Candidatek+1CliqueSet By the SG clique thm, CCSk+1= all s of CSk pairs having k-1 common vertices. Let CCCSk+1 be a union of two k-cliques with k-1 common vertices. Let v and w be the kth vertices (different) of the two k-cliques, then CCSk+1 iff (PE)(v,w)=1. (We just need to check a single bit in PE.) Total degree of C, kC= +kCext Form CCSk+1: Union CSk pairs sharing k-1 vertices, check single PE bit. Below, k=2, so we check edge pairs sharing 1 vertex, then check the 1 new edge bit in PE. kvext The only expensive part of this is forming CCSk. And that is expensive only for CCS3 (as in Apriori ARM) kvint Internal degree of C, kCint =vC External degree of C, kCext =vC CS2=E={13 14 24 34} Next? List out CS3 = {134} form CCS4 = . Done. 6=kCint 2=|PC&PE&Pv1|=kv1int 2=|PC&PE&Pv3| =kv3int 2=|PC&PE&Pv4|=kv4int kC=7 Int/Ext degree of v∈C, kvint/wxt=# edges v to wC/C’ 1=kCext 0=|P’C&PE&Pv3|=kv3ext 0=|P’C&PE&Pv1|=kv1ext 1=|P’C&PE&Pv4|=kv4ext Intra-cluster density δint(C)=|edges(C,C)|/(nc(nc−1)/2)=|PE&PC&PLT|/(3*2/2)=3/3=1 Inter-cluster density δext(C)=|edges(C,C’)| / (nc(n-nc)) =|PE&P’C&PLT|=1/(3*1)=1/3 Tradeoff between large δint(C) and small δext(C) is goal of many community mining algorithms. A simple approach is to Maximize differences. Density Difference algorithm for Communities: δint(C)−δext(C) >Threshold? Degree Differencealgorithm: kCint – kCext> Threshold? Easy to compute w pTrees, even for Big Graphs. Graphs are ubiquitous for complex data in all of science. Ignoring Subgraphs of 2 vertices, the four 3-vertex subgraphs are: C={1,3,4}, D={1,2,3}, F={1,2,4}, H={2,3,4} δint(D) =|PE&PD&PLT|/(3*2/2)=1/3 δext(D)=|PE&P’D&PLT|=1/(3*1)=3/3=1 D δext(H)=|PE&P’H&PLT|=1/(3*1)=2/3 δint(H) =|PE&PH&PLT|/(3*2/2)=2/3 δint(F) =|PE&PF&PLT|/(3*2/2)=2/3 δext(F)=|PE&P’F&PLT|=1/(3*1)=2/3 H F